赞
踩
根据后端返回的图片流格式,选用合适方法转换
下面以base64为例
if(res.status == 200) {
res.data.data.forEach((item,index) => {
let Array = 'data:image/png;base64,' + item
let blob = this.base64toBlob(Array)
let url = URL.createObjectURL(blob)
this.imageList.push({
name:this.keyList[index],
src:url
})
});
}
下面是图片流的两种转换方式:
arrayBufferToBase64(buffer) { var binary = '' var bytes = new Uint8Array(buffer) var len = bytes.byteLength for (var i = 0; i < len; i++) { binary += String.fromCharCode(bytes[i]) } return window.btoa(binary) }, base64toBlob(dataurl) { var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n); while (n--) { u8arr[n] = bstr.charCodeAt(n); } return new Blob([u8arr], { type: mime }); },
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。