***base64位地址其实也可以直接放在img的src回显
1.在created生命周期调用查看接口,得到base64位后,先得到file对象
created() {
console.log(this.rowData);
apivideoSearchimg({ id: this.rowData.id }).then((res) => {
console.log("回显idD", res);
const img = "data:image/png;base64," + res.data[0].imgBase64;
console.log("img", img);
this.file = this.base64ImgtoFile(img); // 得到File对象
console.log("thisfile", this.file);
console.log(
"图片地址",
window.webkitURL.createObjectURL(this.file) ||
window.URL.createObjectURL(this.file)
);
this.imgUrl =
window.webkitURL.createObjectURL(this.file) ||
window.URL.createObjectURL(this.file);
this.imgList.push(this.imgUrl);
});
},
2.得到url
base64ImgtoFile(dataurl, filename = "file") {
const arr = dataurl.split(",");
const mime = arr[0].match(/:(.*?);/)[1];
const suffix = mime.split("/")[1];
const bstr = atob(arr[1]);
let n = bstr.length;
const u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new File([u8arr], `${filename}.${suffix}`, {
type: mime,
});
},
网友评论