vue2.0通过Axios导出excel文件(解决乱码问题)
在项目中遇到导出excel文件乱码问题,按照网上的一些教程和方法,但最后下载下来的文件仍是乱码,后来有大神相助,解决了这个问题,下面po出我的代码:
exportTemplate(this.form1.templateId, { date: date }).then(res => { let fileName = res.headers['content-disposition'].split('=')[1] // 获取文件名 let objectUrl = URL.createObjectURL(new Blob([res.data])) // 文件地址 const link = document.createElement('a') link.download = fileName link.href = objectUrl link.click() })
export function exportTemplate(templateId, query) { return request({ url: '/performance/template/export/' + templateId, method: 'get', params: query, responseType: 'blob' }) }
标红部分是最后解决问题的关键,我尝试过把它放在页面的接口调用代码中,依旧乱码,但是放在这里,文件乱码问题就没有了,希望能对你们有帮助