个人技术分享

在需要添加的页面内:

<script>
	import { getLatestVersion } from '@/utils/latestVersion'
	export default {
		onShow() {
				// 获取系统是否更新信息
				getLatestVersion()
			}
		}
</script>

latestVersion.js

/* 系统版本提示更新  导出此方法*/
export function getLatestVersion(){
	/**
	 *  是否需要提示用户使用最新版
	 * 先判断该api是否可用uni.getUpdateManager
	 */
	if(uni.canIUse('getUpdateManager')){
	 const updateManager = uni.getUpdateManager()
	 updateManager.onCheckForUpdate((res)=>{
		// 判断是否有新版本可使用
		if (res.hasUpdate) {
		// 有的话强制下载最新版
		updateManager.onUpdateReady(()=>{
			uni.showModal({
			  title: '更新提示',
			  content: '资源包已下载完毕,是否重启?',
			  success: (res) => {
					if (res.confirm) {
					  // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启(说白了就是重启,使用最新版本)
					  updateManager.applyUpdate()
					}
			  }
			})
		})
		}
	 })
	 // 新的版本下载失败  提示用户重新打开
	 updateManager.onUpdateFailed(function () {
		uni.showModal({
		  title: '已经有新版本了哟~',
		  content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~'
		})
	 })
	}
}