uni-app 企业微信 uni.chooseImage 无法调用相册 无响应 无报错
uni-app 企业微信 uni.chooseImage 无法调用相册 无响应 无报错
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | 19042.1052 | HBuilderX |
示例代码:
// 选择图片
imgs: function () {
uni.chooseImage({
count: 9,
sizeType: ["compressed"],
success: (res) => {
var tempFiles = [];
tempFiles = res.tempFiles;
for (var i = 0; i < tempFiles.length; i++) {
// 最多能选择9张
if (_self.photos.length > 9) {
_self.$api.showModalWithCloseButton("最多只能上传9张图片");
return;
}
var data = {};
data.url = tempFiles[i].path;
data.id = "";
_self.photos.unshift(data);
_self.addPhotos.unshift(data);
}
},
});
}
操作步骤:
ios企业微信 点击调用uni.chooseImage 无法调出相册
预期结果:
可以调出相册
实际结果:
目前点击无任何反应
bug描述:
uniapp开发h5,打包后应用到企业微信,微信公众号: 移动端环境: 苹果x 苹果xs ios14.0 BUG描述:点击上传照片 调用uni.chooseImage 微信公众号点击可以调用手机相册 , 企业微信点击无任何反应
更多关于uni-app 企业微信 uni.chooseImage 无法调用相册 无响应 无报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
5 回复
有人吗.啊啊啊 救命啊
更多关于uni-app 企业微信 uni.chooseImage 无法调用相册 无响应 无报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
别用 uni.chooseImage 用企业微信的API
朋友,问题解决了吗?
用示例代码hello uni-app能出现你的问题吗?
在企业微信环境下,uni.chooseImage 无法调起相册通常是由于企业微信的JS-SDK权限限制导致的。企业微信内置浏览器对部分API的调用需要额外配置。
解决方案:
- 引入企业微信JS-SDK
import wx from 'weixin-js-sdk'
- 通过uni-app的条件编译判断运行环境
// #ifdef H5
if (navigator.userAgent.toLowerCase().indexOf('wxwork') !== -1) {
// 企业微信环境需要额外配置
this.initWxConfig()
}
// #endif
- 初始化企业微信配置
initWxConfig() {
// 从后端获取配置参数
const config = await this.getWxConfig()
wx.config({
debug: false,
appId: config.appId,
timestamp: config.timestamp,
nonceStr: config.nonceStr,
signature: config.signature,
jsApiList: ['chooseImage'] // 必须声明需要使用的JSAPI
})
wx.ready(() => {
// SDK准备就绪
})
}
- 在企业微信环境中使用wx.chooseImage
imgs: function() {
// #ifdef H5
if (navigator.userAgent.toLowerCase().indexOf('wxwork') !== -1) {
wx.chooseImage({
count: 9,
sizeType: ['compressed'],
sourceType: ['album', 'camera'],
success: (res) => {
// 处理返回的图片
const localIds = res.localIds
// 后续处理...
}
})
return
}
// #endif
// 普通H5环境继续使用uni.chooseImage
uni.chooseImage({
count: 9,
sizeType: ["compressed"],
success: (res) => {
// 原有处理逻辑
}
})
}

