前后端分离下载后端返回的数据,文件类型为excel文件:
实现下载的函数,后台数据返回的类型是bufferArray
downLoad(filename, content) {//filename 文件名,content 下载的内容
var aLink = document.createElement("a");
var blob = new Blob([content], {
type:
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" //文件类型
});
var evt = new Event("click");
aLink.download = filename;
aLink.href = URL.createObjectURL(blob);
aLink.click();
URL.revokeObjectURL(blob);
}
在获取后台接口成功的函数中调用下载函数(vue)
API.download({ id: id })
.then(res => {
this.downLoad("code.xlsx", new Uint8Array(res.data).buffer);
})
.catch(err => {});