- 调用下载接口
- 创建a标签
- 创建下载链接
- 将a标签添加到body中
- 添加点击事件,进行下载
- 下载完成后移除a标签
- 释放掉blob对象
downloadTask(params).then(res=> {
const fileName = res.headers['content-disposition'].split('=')[1];
const _res = res.data;
const blob = new Blob([_res]);
const downloadElement = document.createElement('a');
const href = window.URL.createObjectURL(blob); // 创建下载的链接
downloadElement.href = href;
downloadElement.download = decodeURI(fileName); // 下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); // 点击下载
document.body.removeChild(downloadElement); // 下载完成移除元素
window.URL.revokeObjectURL(href); // 释放掉blob对象
});