业务逻辑就是他给我一个excel表,我生成一个按钮把这个表下载下来。
记录一下,后端传乱码数据我的处理方案,只知其然不知其所以然。(叹气)
获得的乱码如下:
首先处理axios的网络请求,修改responseType和headers,具体操作根据你自己的网络封装来写。
if(contentType === 'file'){
content.responseType = 'blob'
content.headers['Content-Type'] ='application/x-www-form-urlencoded'
}
然后进行网络请求获得数据,并对数据进行操作
let res = await reqDownLoadApply() //获得数据
console.log(res)
if(res.data){
let data = res.data
let url = window.URL.createObjectURL(new Blob([data]));
let link = document.createElement('a');
link.style.display = 'none';
link.href = url;
link.setAttribute('download', '表名.xls');
document.body.appendChild(link);
link.click()
}else{
message.error('没有数据')
}
为什么这样操作还是不明白,有知道的大佬请教教我谢谢。