/**
* 下载文件 用于excel导出
* @param url
* @param parameter
* @returns {*}
*/
export function downFile(url,parameter){
return axios({
url: url,
params: parameter,
method:'get' ,
responseType: 'blob'
})
}
downFile(url, params).then((data) => {
if (!data) {
this.$message.warning('文件下载失败')
return
}
if (typeof window.navigator.msSaveBlob !== 'undefined') {
window.navigator.msSaveBlob(new Blob([data]), "fileName" + '.xls')
} else {
let url = window.URL.createObjectURL(new Blob([data]));
let link = document.createElement('a')
link.style.display = 'none'
link.href = url
link.setAttribute('download', "fileName" + '.xls')
document.body.appendChild(link)
link.click()
document.body.removeChild(link) //下载完成移除元素
window.URL.revokeObjectURL(url) //释放掉blob对象
}
})
需要注意,在引入mockjs的情况下,导出会存在乱码问题,目前原因不明