目录

通过vue调用后端下载Excel文件乱码问题

目录

通过vue调用后端下载Excel文件乱码问题

前端代码:

import { downloadMedicalCooperOrgList } from ‘@/api/medicalCooperOrgManger.js’

import Vue from ‘vue’

// 导出excel文件

export default{

Export(path, fileName, data) {

return downloadMedicalCooperOrgList(path, data).then(response => {

const blob = response.data

const url = window.URL.createObjectURL(new Blob([response.data], { type: ‘application/vnd.ms-excel’ }))

if (‘download’ in document.createElement(‘a’)) { // 非IE下载

const elink = document.createElement(‘a’)

elink.download = fileName

elink.style.display = ‘none’

elink.href = url

document.body.appendChild(elink)

elink.click()

URL.revokeObjectURL(elink.href) // 释放URL 对象

document.body.removeChild(elink)

} else { // IE10+下载

navigator.msSaveBlob(blob, fileName)

}

}).catch(() => {

new Vue(). KaTeX parse error: Expected ‘EOF’, got ‘}’ at position 27: …or(‘下载失败’) }̲) } } 后端代码: i… message.error(‘下载失败’)

})

}

}

通过这些还是不能解决乱码问题,

前端在后端没有借口之前会使用mockjs,但是这个js会拦截下载的数据最终导致乱码,把引入这个js的地方注释掉就行了

这是我引入的地方

https://i-blog.csdnimg.cn/blog_migrate/34ab67b949c346b28a737c0f42b3bd23.png