先下载引入插件
import Papa from "papaparse";
请求接口要写上responseType: 'blob',
export function DataExport(data) {
return request({
url: 'data/export',
responseType: 'blob',
method: 'post',
data:data
})
}
方法
exportCsv() {
DataExport(this.queryParams).then((res) => {
let content = new Blob([res]);
console.log(content, "content");
//生成url对象
let urlObject = window.URL || window.webkitURL || window;
let url = urlObject.createObjectURL(content);
//生成<a></a>DOM元素
let el = document.createElement("a");
//链接赋值
el.href = url;
el.download = "文件导出.csv";
//必须点击否则不会下载
el.click();
//移除链接释放资源
urlObject.revokeObjectURL(url);
});
var csv = Papa.unparse(this.tableData);
//定义文件内容,类型必须为Blob 否则createObjectURL会报错
},
res后台要转成数据流。