- 创建一个js文件
const fsm = wx.getFileSystemManager();
const FILE_BASE_NAME = 'tmp_base64src'; //自定义文件名
function base64src(base64data, cb) {
const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || [];
if (!format) {
return (new Error('ERROR_BASE64SRC_PARSE'));
}
const filePath = `${wx.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`;
const buffer = wx.base64ToArrayBuffer(bodyData);
fsm.writeFile({
filePath,
data: buffer,
encoding: 'binary',
success() {
cb(filePath);
},
fail() {
return (new Error('ERROR_BASE64SRC_WRITE'));
},
});
};
module.exports = base64src;
- 在要用的页面引入
var base64src = require('../../js/base64.js')
var shareQrImg=`data:image/jpg;base64,iVBORw0KGgoAAAANSUhEUgAAAQwAAAErCAYAAAArJb0dAAAgAElEQVR4nNS92Y9l2XXm9zvjPXceY.....`; // base64编码省略号代替,太长了
注意:data:image/jpg,jpg也可以是其他图片格式,例如:png,看后端给你返回什么
console.log(shareQrImg)
base64src(shareQrImg, resCurrent => {
console.log(resCurrent) // 返回图片地址,直接赋值到image标签即可(此图片只是本地图片)
})
// 网络图片转base64编码(此方法没试,留在这里备用)
let base64 = wx.arrayBufferToBase64(网图地址);
let userImageBase64 = 'data:image/jpg;base64,' + base64;
console.log(userImageBase64); // 打印base64格式图片
文章转载至 https://www.cnblogs.com/jessie-xian/p/11571609.html