使用node-xlsx生成excel(xlsx)文件并导出

本文介绍如何使用node-xlsx库在前端生成并导出包含多个sheet的XLSX文件。通过简单示例展示了如何定义工作表内容及结构,并提供导出功能。

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

需求:后端返回列表,前端生成xlsx文件并导出
1.安装node-xlsx

npm install node-xlsx

2.demo(js)

const xlsx = require('node-xlsx')
// worksheets 数组形式,数组每组数据代表一个sheet页面
//  其中name:sheet页名称,data:表格数据,二维数组,第一组数据表示表头
const worksheets = [
  {
    name: 'sheet1',
    data: [['表头A', '表头B', '表头C', '表头D'], ['数据A', '数据B', '数据C', '数据D']]
  },
  {
    name: 'sheet2',
    data: [['表头A', '表头B', '表头C', '表头D'], ['数据A', '数据B', '数据C', '数据D']]
  }
]
function buildXlsx (worksheets) {
  return xlsx.build(worksheets) // return a buffer
}
function exportXlsx (result, fileName = 'test.xlsx') {
  const ab = Buffer.from(result, 'binary')
  const blob = new Blob([ab])
  const blobUrl = URL.createObjectURL(blob)
  const a = document.createElement('a')
  a.href = blobUrl
  a.download = fileName
  a.click()
  window.URL.revokeObjectURL(blobUrl)
}
const result = buildXlsx(worksheets)
exportXlsx(result)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值