背景:
1、vue项目
2、新接手的项目(不熟悉)
3、axios插件
需求:
导到文件流清单
问题:出现文件错误,乱码
以前做过很多的导出,万万没想打栽这个坑里面了。
解决方案
1、绝大部分的乱码的问题是需求在 请求头里添加responseType:blob 参数
事实是我也照做了,但仍然不行。 我废了好大劲才找到哪位仁兄写的框架,他在调用请求的时候,把responseType参数给替换成 responseType: _options.responseType === undefined (这波操作我没看懂)
流处理 代码 excel 文件,用new Blob([data], {type: 'application/vnd.ms-excel'}))
正常情况下,这样基本就可以了
万万没想到还有其他坑
参考这位博主:
2、把main文件中引用mock的地方注掉,属实百思不得其解。好像是mock会把数据转为json格式。
至此,文件成功导出。