if (uni.canIUse("getUpdateManager")) {
console.log("getUpdateManager", uni.canIUse("getUpdateManager"));
}
![3***@qq.com](https://img-cdn-tc.dcloud.net.cn/account/identicon/338e1c7035754990ec96f6de6a4f946d.png)
- 发布:2025-02-07 14:27
- 更新:2025-02-07 15:09
- 阅读:18
产品分类: uniapp/H5
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 11
HBuilderX类型: 正式
HBuilderX版本号: 4.45
浏览器平台: Chrome
浏览器版本: 132.0.6834.110
项目创建方式: HBuilderX
示例代码:
操作步骤:
把上面的代码粘贴到app.vue中的onlaunch
把上面的代码粘贴到app.vue中的onlaunch
预期结果:
uni.canIUse("getUpdateManager")为false
uni.canIUse("getUpdateManager")为false
实际结果:
uni.canIUse("getUpdateManager")为true
uni.canIUse("getUpdateManager")为true
bug描述:
在App.vue文件的onLaunch检测小程序更新,使用canIUse进行多端隔离,h5端uni.canIUse("getUpdateManager")为true?这个api不是小程序独有的吗
![爱豆豆](http://img-cdn-tc.dcloud.net.cn/uploads/avatar/001/20/55/59_avatar_mid.jpg?v=0)
![](http://img-cdn-tc.dcloud.net.cn/static/common/sponsor-1.png)
![](http://img-cdn-tc.dcloud.net.cn/static/common/sponsor-count-3.png)
爱豆豆 - 办法总比困难多
是小程序独有的 但是你在web端打印 uni.getUpdateManager就能看到 这个方法是存在的 应该是被封装到uni中了 所以通过canIUse判断是存在的
你可以用条件编译解决你现在遇到的问题
// #ifdef MP-WEIXIN
console.log("getUpdateManager", uni.canIUse("getUpdateManager"));
// #endif
条件编译文档:https://uniapp.dcloud.net.cn/tutorial/platform.html#%E6%9D%A1%E4%BB%B6%E7%BC%96%E8%AF%91%E5%A4%84%E7%90%86%E5%A4%9A%E7%AB%AF%E5%B7%AE%E5%BC%82
3***@qq.com (作者)
条件编译是可以解决这个问题,但有点怪,canIUse不是去判断这个api在某个平台是否能用吗
2025-02-07 15:21