关于微信小程序更新问题实现
1)小程序的启动方式:
冷启动----小程序首次打开或销毁后再次被打开
热启动----小程序打开后,在一段时间内(目前:5分钟)再次被打开,此时会将后台的小程序切换到前台。
2)根据以上两种启动方式,相应的更新机制为:
小程序冷启动时,会检查小程序是否有最新版本。如果有则将异步下载最新版本,但是仍将运行当前版本等到下一次冷启动时再运行最新版本。
如果你想现在就使用最新版本则需要调用wx.getUpdateManager API进行处理;
3)关于wx.getUpdateManager实战使用
3.1)API介绍
//获取全局唯一的版本更新管理器,用于管理小程序更新。
const updateManager = wx.getUpdateManager();
3.2) updateManager对象的方法列表:
a)onCheckUpdate(function(res){}) 当向微信后台请求完新版本信息,会进行回调
b)onUpdateReady 当新版本下载完成,会进行回调
c) onUpdateFail 当新版本下载失败,会进行回调
d) applyUpdate 当新版本下载完成,调用该方法会强制当前小程序应用上新版本并重启
实现代码:
// 获取小程序更新机制兼容
if (wx.canIUse('getUpdateManager')) {
const updateManager = wx.getUpdateManager()
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
if (res.hasUpdate) {
updateManager.onUpdateReady(function () {
wx.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success: function (res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate()
}
}
})
})
updateManager.onUpdateFailed(function () {
// 新的版本下载失败
wx.showModal({
title: '已经有新版本了哟~',
content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~',
})
})
}
})
}
文章评论功能改进实现
一般文章评论之后会在立刻显示在文章底部,而且是置顶的,实现思路保存至数据库之后,将它放入绑定数据集合元素首位即可
wx.showToast({
title: '评论成功',
icon: 'none',
duration: 1500
});
let reslist = [args];
let resArr =[];
for(let i=0;i<list.length;i++){
resArr.push(list[i]);
}
后台管理实现
后台管理主要管理维护数据库的增、删、改、查,由于微信小程序有广告主、流量主功能,后期开通后,只需要通过后台管理将广告id录入数据库即可,而不需要重新更改代码然后在重新发布。
基于云开发的小程序版本更新、评论功能改进、后台管理的实现
代码实现:
formSubmit(e){
let that = this;
let comment = e.detail.value.adid;
if (comment == undefined || comment == null || comment === "") {
wx.showToast({
title: '请输入内容',
icon: 'none',
duration: 1500
});
return;
}
let args = {
unitid: comment,
}
const db = wx.cloud.database();
db.collection('banner').add({
data: args
});
wx.showToast({
title: '提交成功',
icon: 'none',
duration: 1500
});
that.setData({
unitid: ''
});
},
小程序已经上线啦,欢迎添加体验!!!(老何的博客)