项目初始化
This commit is contained in:
34
src/util/excel/exporeExcel.ts
Normal file
34
src/util/excel/exporeExcel.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
//导入依赖项
|
||||
import FileSaver from 'file-saver';
|
||||
import * as XLSX from "xlsx";
|
||||
|
||||
/**
|
||||
* elemet-ui el-table数据导出为xlsx表格
|
||||
* @param {*} _targetId Element-UI el-table组件的id值
|
||||
*/
|
||||
export const exportTableAsXLSX = function (tableArray: any[], header: any, name: string) {
|
||||
//根据table生成Book工作簿
|
||||
// let wb = XLSX.utils.table_to_book(document.getElementById('_targetId'));
|
||||
|
||||
let wb = XLSX.utils.book_new()
|
||||
let ws: any = XLSX.utils.json_to_sheet(tableArray, {header: header})
|
||||
wb.SheetNames.push('sheet1');
|
||||
wb.Sheets['sheet1'] = ws;
|
||||
//将Book工作簿作为输出
|
||||
let wbout = XLSX.write(wb, {
|
||||
bookType: "xlsx",
|
||||
bookSST: true,
|
||||
type: "array"
|
||||
});
|
||||
//尝试将当前table内容保存为excel文件
|
||||
try {
|
||||
FileSaver.saveAs(
|
||||
//被导出的blob二进制对象
|
||||
new Blob([wbout], {type: "application/octet-stream"}),
|
||||
//导出文件的名称+后缀名
|
||||
name + ".xlsx"
|
||||
);
|
||||
} catch (e) {
|
||||
if (typeof console !== "undefined") console.log(e, wbout);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user