下载base64或者blob数据下载为图片或者其他的文件
/**
* base64或blob数据下载为图片或者其他的
* @param {*} fileData string
* @param {*} name 名称
* @param {*} suffix 后缀
* @param {*} isBlobData 传的是否是blob数据,可以直接用
*/
downLoadImg(fileData, name, suffix, isBlobData) {
const blob = isBlobData ? fileData : this.dataURItoBlob(fileData);
let blobUrl = window.URL.createObjectURL(blob);
let link = document.createElement('a');
document.body.appendChild(link);
link.style.display = 'none';
link.href = blobUrl;
link.download = name + '.' + suffix;
link.click();
document.body.removeChild(link);
window.URL.revokeObjectURL(blobUrl);
},
dataURItoBlob(dataURI) {
var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
var byteString = atob(dataURI.split(',')[1]);
var arrayBuffer = new ArrayBuffer(byteString.length);
var intArray = new Uint8Array(arrayBuffer);
for (var i = 0; i < byteString.length; i++) {
intArray[i] = byteString.charCodeAt(i);
}
return new Blob([intArray], { type: mimeString });
}
}