!!必须增加请求头,不然,获取到数据会报不是blob类型的错误!!
请求时,增加请求头
// 工单预览
export function getPdf(parameter) {
return axios({
url: '/mb/download/pdf',
method: 'post',
data:parameter,
responseType: "blob"
})
}
页面解析
getPdf(objList).then(res=>{
const blob = res //blob解析
const reader = new FileReader()
reader.readAsDataURL(blob)
let num = 0
reader.onload = function (ev) {
if (window.navigator.msSaveOrOpenBlob) {
// 兼容ie11
const blobObject = new Blob([blob])
window.navigator.msSaveOrOpenBlob(blobObject, '文件名称.pdf')
} else {
const url = URL.createObjectURL(new Blob([blob]))
const a = document.createElement('a')
document.body.appendChild(a) // 此处增加了将创建的添加到body当中
a.href = url
a.download = objList[num].materialcode+'.pdf'//设置下载文件名
num +=1
a.target = '_blank'
a.click()
a.remove() // 将a标签移除
}
}
this.loadingVisible = false
// }
})