字符串先转化为base64,再通过createObjectURL转化为imgUrl
const imgUrl = (str: string) => {
const blob = dataURLtoBlob(str)
const downloadUrl = window.URL.createObjectURL(blob)
return downloadUrl
}
const dataURLtoBlob = (base64Str: string) => {
// eslint-disable-next-line prefer-const
let bstr = atob(base64Str),
n = bstr.length,
// eslint-disable-next-line prefer-const
u8arr = new Uint8Array(n)
while (n--) {
u8arr[n] = bstr.charCodeAt(n)
}
return new Blob([u8arr], {type: 'image/png'})
}