编译为微信小程序插件后在uni-app中生成的代码使用了canIUse方法但小程序插件不支持该方法并报错请在编译小程序插件时移除此方法
编译为微信小程序插件后在uni-app中生成的代码使用了canIUse方法但小程序插件不支持该方法并报错请在编译小程序插件时移除此方法
操作步骤:
见附件
预期结果:
见附件
实际结果:
见附件
bug描述:
附件图片分别是编译前代码,编译为插件后代码,开发者工具运行报错,以及微信官方文档说明。 请官方修复此问题。
| 信息类别 | 信息内容 |
|---|---|
| 产品分类 | uniapp/小程序/微信 |
| PC开发环境 | Windows |
| 系统版本号 | win10 22H2 |
| 第三方工具版本 | 1.06 |
| 基础库版本号 | 3.11 |
| 项目创建方式 | CLI |
| CLI版本号 | 3.0 |
更多关于编译为微信小程序插件后在uni-app中生成的代码使用了canIUse方法但小程序插件不支持该方法并报错请在编译小程序插件时移除此方法的实战教程也可以访问 https://www.itying.com/category-93-b0.html
app.vue 里面不调用前面两个API还有这个问题吗?
更多关于编译为微信小程序插件后在uni-app中生成的代码使用了canIUse方法但小程序插件不支持该方法并报错请在编译小程序插件时移除此方法的实战教程也可以访问 https://www.itying.com/category-93-b0.html
删除前两个方法后编译的结果和之前一样,看来好像并不是这两个方法造成的,也许原始框架就是这样设置的?
回复 z***@163.com: 你是hx项目还是cli项目?
回复 DCloud_UNI_JBB: cli项目
找到 node_modules/@dcloudio/uni-mp-weixin/dist/uni.api.esm.js 文件,搜索
if (!wx$2.canIUse(‘getAppBaseInfo’)) {
wx$2.getAppBaseInfo = wx$2.getSystemInfoSync;
}
if (!wx$2.canIUse(‘getWindowInfo’)) {
wx$2.getWindowInfo = wx$2.getSystemInfoSync;
}
if (!wx$2.canIUse(‘getDeviceInfo’)) {
wx$2.getDeviceInfo = wx$2.getSystemInfoSync;
}
替换为
if (!wx$2.getAppBaseInfo || !wx$2.getAppBaseInfo()) {
wx$2.getAppBaseInfo = wx$2.getSystemInfoSync;
}
if (!wx$2.getWindowInfo || !wx$2.getWindowInfo()) {
wx$2.getWindowInfo = wx$2.getSystemInfoSync;
}
if (!wx$2.getDeviceInfo || !wx$2.getDeviceInfo()) {
wx$2.getDeviceInfo = wx$2.getSystemInfoSync;
}
这样做暂时解决了???,这个问题会在后续版本中修复吗?
论坛不支持emoji表情啊,点赞变成问号了
回复 z***@163.com: 你重新编译一下插件测试下还有没有问题,后续会修复
回复 DCloud_UNI_JBB: 暂时可以了,有问题我再来反馈,感谢!!
回复 z***@163.com: 可以打个patches,避免重新安装依赖改动丢失
回复 z***@163.com: 我刚刚又更新了一下代码,更正一下再试试
回复 DCloud_UNI_JBB: 按照你最后修改的测试了,没有问题


