微信 h5 中的 chooseImage 接口拿到 localId 后無法通過 img 標簽顯示圖片
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
最近的一個微信 h5 項目,用到了 微信 jssdk 的 chooseImage 方法,遇到了坑,在這里記一下 需求是用戶拍照或上傳本地圖片,先顯示出來,然后再上傳圖片做其他的事情,弄的過程中發現,安卓可以使用 chooseImage 方法返回的 localId 顯示圖片,ios 顯示不出圖片 查了下,找到了解決方法: ios 微信6.5.3版本開始支持開發者手動切換 WKWebview 和 UIWebview,使開發者可提前對 WKWebview 進行適配 WKWebview 不再支持通過使用 chooseImage api 返回的 localld ,如:”img src=wxLocalResource://50114659201332” 的方式預覽圖片。 在iOS微信6.5.3版本及之后的版本中,使用新增的 jsapi:getLocalImgData 拿到 LocalID 對應的圖片base64編碼后再在前端頁面中顯示 也就是說,在 ios 上,chooseImage 拿到圖片的 localId 后,再使用 getLocalImgData 方法拿到 localId 對應的圖片 base64 栗子: wx.chooseImage({ count: 1, // 默認9 sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,默認二者都有 sourceType: ['album', 'camera'], // 可以指定來源是相冊還是相機,默認二者都有 success: (res) => { var localIds = res.localIds.toString(); // 返回選定照片的本地ID列表,localId可以作為img標簽的src屬性顯示圖片 this.imgUrl = localIds; if (isIos()) { wx.getLocalImgData({ localId: localIds, // 圖片的localID success: (res) => { this.imgUrl = res.localData // localData是圖片的base64數據,可以用img標簽顯示 }, }) } }, }) 該文章在 2023/6/8 11:40:15 編輯過 |
關鍵字查詢
相關文章
正在查詢... |