wx.chooseImage坑

351 阅读1分钟

拍照或从手机相册中选图接口developers.weixin.qq.com/doc/offiacc…

获取本地图片接口developers.weixin.qq.com/doc/offiacc…

看完就知道为啥要判断window.__wxjs_is_wkwebview

<img :src="imgSrc" />

const imgSrc = ref()
function chooseImage() {
  wx.chooseImage({
    count: 1, // 默认9
    sizeType: ["original", "compressed"], // 可以指定是原图还是压缩图,默认二者都有
    sourceType: ["album", "camera"], // 可以指定来源是相册还是相机,默认二者都有
    success: function (res) {
      let localId = res.localIds[0];
      let src
      if (window.__wxjs_is_wkwebview) {
        wx.getLocalImgData({
          localId: localId,
          success: function (res) {
            src = res.localData
          },
        });
      } else {
        src = localId
      }
      imgSrc.value = src
    },
  });
}

之前遇到的很奇葩的问题,只出现在iphone上的,上传图片前会从下面弹个框告诉用户上传示例图,然后在里面点击按钮进行选取图片或拍照,结果出来的图片一直不显示,iphone13以上都没问题,iphone13以下都有这个问题,只能直接触发选取,示例弹窗在其他地方触发,然后就解决了,不知道为什么