创建blob对象实现文件下载:
/**
* 文件流转blob对象下载
* @param data 文件流
* @param type文件类型
* @param fileName 文件名
*/
function downloadFile(data, type, fileName) {
// 文件流转换blob对象
let blob = new Blob([data], {type: `application/${type};charset=utf-8`});
let downloadElement = document.createElement('a');
// 创建下载的链接
let href = window.URL.createObjectURL(blob);
downloadElement.href = href;
// 下载后文件名
downloadElement.download = fileName;
document.body.appendChild(downloadElement);
// 点击下载
downloadElement.click();
// 下载完成移除元素
document.body.removeChild(downloadElement);
// 释放掉blob对象
window.URL.revokeObjectURL(href);
}