axios.get(url, {
params:params,
responseType: 'blob'
}).then(res = >{
let blob = new Blob([res], {
type: "application/vnd.ms-excel"
});
let objectUrl = URL.createObjectURL(blob);
let a = document.createElement("a");
a.href = downloadUrl;
a.download = "这里是文件名-可以从返回值里面获取";
//a.click();
//下面这个写法兼容火狐
a.dispatchEvent(new MouseEvent('click', {bubbles: true, cancelable: true, view: window}));
window.URL.revokeObjectURL(blob);
})
responseType:是指接收的文件类型,这个是二进制流
let blob = new Blob([res], {
type: "application/vnd.ms-excel"
});
里面的type指的是要接受的文件后缀 参考链接 http://tool.oschina.net/commons/