網(wǎng)上多數(shù)都是通過微信api將圖片url 轉(zhuǎn)換成Base64 格式针肥,但僅限于網(wǎng)絡地址的圖片,本地路徑的圖片轉(zhuǎn)換會報錯,如下:
真機下會出錯報無效的路徑(不可用)
request:fail invalid url "wxfile://tmp_7c6025b86ad385c609d0094facbeb1c7ca426dc83b33e628.jpg"
wx.request({
url: temp,//臨時路徑
responseType: 'arraybuffer', //設置返回的數(shù)據(jù)格式為arraybuffer
success: res => {
const base64 = wx.arrayBufferToBase64(res.data)},
})
其他解決方案 http://www.reibang.com/p/c7649a278fd0
有效解決方案
使用 uni.getFileSystemManager().readFile
uni.chooseImage({
count: 1, //默認9
sizeType: ['compressed'],
sourceType: ['album'], //從相冊選擇
success: (res) => {
this.src = res.tempFilePaths[0]
uni.getFileSystemManager().readFile({
filePath: this.src,
encoding: 'base64',
success: r => { // r.data }
})
}
})