js实现excel导出

该博客介绍了如何使用JavaScript将给定的表格数据转换为Excel文件,包括处理标题和数据,并通过XLSX库实现文件导出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


/* 
  备注:直接传入表格的 columns  和 data即可

  header: [{dataIndex: 'site', title: '地点'}]      string Array    标题
  body: [{time: '3点', site: '青岛'}]       object Array    数据
  name: '数据导出'                          string          文件名
*/
export function expoerExcel(header = [], body = [], name = '') {
  console.log('header==', header);
  console.log('body==', body);
  console.log('name==', name);
  // 处理标题
  const dataSource = [], r1 = [];
  header.forEach(item => {
    r1.push(item.title)
  })
  dataSource.push(r1)

  // 处理数据
  body.forEach(b => {
    let r = [];
    header.forEach(h => {
      r.push(b[h.dataIndex])
    })
    dataSource.push(r)
  })

  console.log('dataSource==', JSON.stringify(dataSource)); // [["工厂名称","物料编码","物料名称","BOM层级","版本号","数量"],["华为","3Z668A","钣金门",2,"N167",30],["华为","WS2452","钣金门2",1,"N167",230],["华为","74GER4","冷凝器",3,"N167",16]]

  const worksheet = XLSX.utils.aoa_to_sheet(dataSource);
  const new_workbook = XLSX.utils.book_new();  
  XLSX.utils.book_append_sheet(new_workbook, worksheet, 'sheet1');
  XLSX.writeFile(new_workbook, `${name || '导出报表'}.xlsx`);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值