uniapp中根据图片路径(网络或本地路径)转换为base64

/** * 图片地址转换为base64格式图片 * @param {string} url 图片地址 可网络地址、本地相对路径 * @param {string} type base64图片类型 默认png */function urlToBase64(url, type = 'png') {let promises// 网络地址 或者h5端本地相对路径 可使用request方式promises = new Promise((resolve, reject) => {uni.request({url: url,method: 'GET',responseType: 'arraybuffer',success: (res) => {const base64 = `data:image/${type};base64,${uni.arrayBufferToBase64(res.data)}`resolve(base64);},fail: (err) => {reject(err);},})})// #ifdef APPif (!url.startsWith('http')) {// app真机本地相对路径promises = new Promise((resolve, reject) => {uni.compressImage({src: url,quality: 100, // 图片质量压缩0~100,100表示图片质量保持原样success: (res) => {const tempUrl = res.tempFilePath // 使用compressImage获取到安卓本地路径file:///...plus.io.resolveLocalFileSystemURL(tempUrl, (entry) => {entry.file((e) => {let fileReader = new plus.io.FileReader();fileReader.onload = (r) => {resolve(r.target.result)}fileReader.readAsDataURL(e)})})},fail: (err) => {reject(err);},})})}// #endifreturn promises}