作者要说的话:
这个函数在vue2、vue3里面也可以用的,个人还是比较偏爱vue3组合式语法的,简单快捷。
首先检查你的uni-app的vue版本是多少,请对号入座!这个vue3可以用vue2的语法,看你自愿。
打卡项目目录找到App.vue文件,并里面加入:
这两个代码块二选一即可!!根据自己的vue版本需求
这两个代码块二选一即可!!根据自己的vue版本需求
这两个代码块二选一即可!!根据自己的vue版本需求
这个是Vue3语法:
<script setup>
import { onLaunch } from '@dcloudio/uni-app';
/** 检查版本更新 */
const checkForUpdate = () => {
const updateManager = uni.getUpdateManager();
updateManager.onCheckForUpdate((res) => {
if (res.hasUpdate) {
updateManager.onUpdateReady(() => {
uni.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success: (res) => {
if (res.confirm) {
updateManager.applyUpdate();
}
}
})
})
}
updateManager.onUpdateFailed(() => {
uni.showModal({
title: '更新失败',
content: '新版本下载失败,请检查网络',
showCancel: false
})
})
})
}
onLaunch(() => {
checkForUpdate();
})
</script>
这两个代码块二选一即可!!根据自己的vue版本需求
这两个代码块二选一即可!!根据自己的vue版本需求
这两个代码块二选一即可!!根据自己的vue版本需求
这个是Vue2语法
<script>
export default {
onLoad() {
this.checkForUpdate();
},
methods: {
checkForUpdate() {
const updateManager = uni.getUpdateManager();
updateManager.onCheckForUpdate((res) => {
if (res.hasUpdate) {
updateManager.onUpdateReady(() => {
uni.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success: (res) => {
if (res.confirm) {
updateManager.applyUpdate();
}
}
});
});
}
});
updateManager.onUpdateFailed(() => {
uni.showModal({
title: '更新失败',
content: '新版本下载失败,请检查网络',
showCancel: false
});
});
}
}
};
</script>
做完后在小程序里面记得打卡模拟更新:
这个时候稍微等一下,因为uni编译比较慢:
当出现这一个弹窗的时候,恭喜你!你已经成功了!
如果一直没有效果的话,请在函数里面打印res,实在不行,你来找我。