更新微信小程序事件 - 放在onLaunch避免更新机制影响用户下单流程
const $wxAppUpdateVersion = () => {
// 小程序更新机制兼容
if (wx.canIUse('getUpdateManager')) {
const updateManager = wx.getUpdateManager()
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
if (res.hasUpdate) {
updateManager.onUpdateReady(function () {
$dialog({
title: '更新提示',
content: '新版本已经准备好,即将重启应用!',
showCancel: false,
confirmText: '确 定'
}).then(res => {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate()
}).catch(err => {
console.log('取消更新.')
})
})
updateManager.onUpdateFailed(function () {
// 新的版本下载失败
$dialog({
title: '更新提示',
content: '抱歉!新版本更新失败,请您删除当前小程序,重新搜索打开哟~',
showCancel: false,
confirmText: '确 定'
}).then(res => {
console.log('确定')
}).catch(err => {
console.log('取消')
})
})
}
})
} else {
// 提示希望用户在最新版本的客户端上体验您的小程序
$dialog({
title: '提示',
content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。',
showCancel: false,
confirmText: '确 定'
}).then(res => {
console.log('确定')
}).catch(err => {
console.log('取消')
})
}
}