1. 应把请求头设置:responseType: 'blob'
const data = await defHttp.get({url: url, params:params,responseType: 'blob'}, {isTransformResponse: false})
服务器响应之后:
if (typeof window.navigator.msSaveBlob !== 'undefined') {
window.navigator.msSaveBlob(new Blob([data], {type: 'application/vnd.ms-excel'}), name + '.xls')
} else {
let url = window.URL.createObjectURL(new Blob([data], {type: 'application/vnd.ms-excel'}))
let link = document.createElement('a')
link.style.display = 'none'
link.href = url
link.setAttribute('download', name + '.xls')
document.body.appendChild(link)
link.click()
document.body.removeChild(link); //下载完成移除元素
window.URL.revokeObjectURL(url); //释放掉blob对象
}
支持IE浏览器下载文件--转成zip,excel,pdf
最新推荐文章于 2024-10-04 17:52:38 发布