
获得徽章 8
- #日新计划更文活动#
前端调用后端接口返回的二进制数据流,实现下载excel文件功能。
row.fname---文件名
调用后端接口时候传递文件名参数,返回的是二进制文件流,在成功返回文件流后处理数据如下:
DownLoadFile(row.fname).then(res=>{
let fileName = row.fname + ".xlsx"; // 文件名+后缀
console.log("文件下载===", res)
let blob = new Blob([res], {type: 'application/vnd.ms-excel'})
let downloadElement = document.createElement('a'); // 创建a标签
let href = window.URL.createObjectURL(blob); // 创建下载的链接
downloadElement.href = href;
downloadElement.download = fileName;
document.body.appendChild(downloadElement);
downloadElement.click(); // 点击下载
document.body.removeChild(downloadElement); // 下载完成移除元素
window.URL.revokeObjectURL(href); // 释放掉blob对象
})展开86