vue实现文档导出下载的功能,后端返回文档流数据,前端将这个文档流利用Bolb技术来处理下载’
**第一步调用接口,我这里是将接口封装调用的**
**responseType: `arraybuffer` //响应类型一定要写 **
this.$http.rules.exportTemplate( {responseType: `arraybuffer`}).then(res=>{
console.log(res) // 可以输出一下,看一下后台返回的结果数据
if(res.data){
let blob = new Blob([res.data],{
type: `application/word`
})
let Url = URL.createObjectURL(blob);
let link = document.createElement('a');
let downloadName = `个人简历.doc`;
link.href = Url
link.setAttribute('download',downloadName) // 利用a标签下载事件下载`个人简历.doc `文件
document.body.appendChild(link)
link.click()
} else{
this.$message.error('导出文件失败')
}
})
**关于下载模板,我一般是后端把模板给我,我将文件放在本地,vue项目static文件里面**
**通过 window.open(./static/importTemplate.xlsx) 来下载**
节省服务器资源