安琪酵母(西藏)益生菌信息采集中心智能实验室
longyvfengyun
2023-09-06 093388d51f56e95d155f204971d49fe303b76408
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import * as XLSX from "xlsx";
import FileSaver from 'file-saver';
function exportExcelUtil(headers, data, fileName, sheetName) {
  // 格式化数据去除无效数据
  let list = data.map(item=>{
    let obj = {};
    Object.keys(headers).forEach(key=>{
      obj[key] = item[key];
    });
    return obj;
  });
  const exportData = [
    headers,
    ...list,
  ];
  sheetName = sheetName?sheetName:"Sheet1";
  fileName = fileName?fileName:"新建xlsx工作表";
  // 注意表格上绑定id,获取dom元素
  const worksheet = XLSX.utils.json_to_sheet(exportData, { skipHeader: true });
  const workbook = XLSX.utils.book_new();
  XLSX.utils.book_append_sheet(workbook, worksheet, sheetName);
  const workbookOutput = XLSX.write(workbook, { bookType: "xlsx", type: "array" });
  try {
    FileSaver.saveAs(new Blob([workbookOutput], { type: 'application/octet-stream' }), fileName+".xlsx")
  } catch (e) {
    console.log(e)
  }
}
 
export default exportExcelUtil;