黑马程序员技术交流社区
标题:
【广州前端】- vue2.x 下载后台传过来的流文件(excel)
[打印本页]
作者:
coral菜菜
时间:
2018-7-11 15:27
标题:
【广州前端】- vue2.x 下载后台传过来的流文件(excel)
1.接口返回的流和头部:
2.下载流文件的代码
方法一:是用了插件
https://github.com/kennethjiang/js-file-download
方法二:是用了 blob
不管哪种方法,记得设置 responseType !!!!!
附上代码:
[url=]
[/url]
//
导出订单
exportBill:function () { let url_post = Vue.prototype.api.apiList.EXPORT_BILL; let params_post = { orderStartDate:
this
.timepickerDateFormat(
this
.rangeTime[
0
]) ||
this
.rangeTime[
0
] ||
''
, orderEndDate:
this
.timepickerDateFormat(
this
.rangeTime[
1
]) ||
this
.rangeTime[
1
] ||
''
, prodCode:
this
.prodId, promoteFlag:
this
.promotionSiteId, policyStatusList:
this
.tableBillStateCheckedData, }; Vue.axios.post(url_post,params_post,{responseType:
'
arraybuffer
'
}).then((res) => { let fileName = res.headers[
'
content-disposition
'
].match(/fushun(\S*)xls/)[
0
]; fileDownload(res.data,fileName); //如果用方法一 ,这里需要安装 npm install js-file-download --save ,然后引用 var fileDownload = require('js-file-download'),使用详情见github;
//
let blob = new Blob([res.data], {type: "application/vnd.ms-excel"});
//
let objectUrl = URL.createObjectURL(blob);
//
window.location.href = objectUrl;
}).
catch
(function (res) {}); },
点击
查看更多精彩前端资源
点击有惊喜
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2