常见小程序开发框架对比及更新对比
本文摘要
一、常见小程序开发框架对比 < ="http://blo
一、常见小程序开发框架对比
< ="http://blog.jsudo.com/wp-content/uploads/2023/01/frc-352354642731093ccb905ab3c1ac1fb1.png">
图解小程序开发框架.png
二、小程序更新机制
- 概念:
- 冷启动:如果用户首次打开,或小程序销毁后被用户再次打开,此时小程序需要重新加载启动,即冷启动。
- 热启动:如果用户已经打开过某小程序,然后在一定时间内再次打开该小程序,此时小程序并未被销毁,只是从后台状态进入前台状态,这个过程就是热启动。
// 在app.js中,即小程序启动时
onShow: function(options) {
tShopfas.checkUpdateVersion();
},
checkUpdateVersion() {
// 判断微信版本是否 兼容小程序更新机制API的使用
if (wx.canIUse('getUpdateManager')) {
// 创建 UpdateManager 实例
const updateManager = wx.getUpdateManager();
// 检测版本更新
updateManager.onCheckForUpdate(function(res) {
console.log('获取版本', res);
// 请求完新版本信息的回调
if (res.hasUpdate) {
// 监听小程序有版本更新事件
updateManager.onUpdateReady(function() {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 ( 此处进行了自动更新操作)
updateManager.applyUpdate();
})
updateManager.onUpdateFailed(function() {
// 新版本下载失败
wx.showModal({
title: '已经有新版本喽~',
content: '请您删除当前小程序,到微信 “发现-小程序” 页,重新搜索打开哦~',
});
})
}
})
} else {
// 此时微信版本太低(一般而言版本都是支持的)
wx.showModal({
title: '溫馨提示',
content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
});
}
},
< ="http://blog.jsudo.com/wp-content/uploads/2023/01/frc-81880cb8453e0b7ba23c87398b54102f.png">
图解原理.png
三、关于数据请求时机的要求:
- onLaunch::小程序启动以后便不会改变的数据
- onShow(app.js内的):小程序启动以后便不再改动的数据
- onLoad: 页面加载以后便不会改变的数据
- onShow(page内的):「页面显示/从后台跳回前端显示/从跳转页返回」时便需要更新的数据
< ="http://blog.jsudo.com/wp-content/uploads/2023/01/frc-ac7324e7b80c5d841d41ce25e4243ffa.png">
四、规范setData操作:
< ="http://blog.jsudo.com/wp-content/uploads/2023/01/frc-5ca94fb21cd8a6b3deddbcaf24c00d3d.png">
原理图.png
推荐方案:
- 减少setData数据传输量:
a) 仅传输视图层使用到的数据,JS环境用到的数据存放到data对象外;
b) 合理利用局部更新。setData支持使用数据路径的方式对对象的局部字段进行更新。 - 降低setData执行频率:
c) 将多个setData调用合并执行,减少线程间通信频次;
d) 当需要在频繁触发的用户事件(如PageScroll、Resize事件)中调用setData,合理的利用函数防抖(debounce)和函数节流(throttle)可以减少setData执行次数。
// 合理利用局部更新。setData支持使用数据路径的方式对对象的局部字段进行更新。
let tarIndex = 2;
tShopfas.setData({
[`dotList[${tarIndex}].dotShow`]: false,
[`dotList[${tarIndex}].dotNum`]: 0
});
相关文章
****更多行业产品开发方案,请关注 加速度JSUDO***
<以上资讯仅供参考,如果您需解决具体问题,建议您关注作者;如果有软件产品开发需求,可在线咨询加速度产品经理获取方案和报价>
加速度是一家专注于为企/事业单位的供应链提供数字化营销/服务的公司,产品线涵盖线上营销策划、商城开发、智慧园区、智能客服和企微SCRM系统,应用于营销推广-线上交易-销售管理-物流配送和服务支持等,致力于帮助企业开发更具投资价值的“数字”资产产品。
添加客服微信获取更多内容










