xlsx前端数据导出excel
1. 安装
npm install xlsx --save
2. 引入
import * as XLSX from 'xlsx';
3. 使用
这里数据为二维数组,利用
aoa_to_sheet创建sheet对象。也可以使用数组对象,利用
json_to_sheet创建sheet对象e.g.
[ {'姓名': '张三', '年龄': 12}, {'姓名': '李四', '年龄': 14} ]
e.g.
// 页面表格渲染数据
// 准备要导出的数据(二维数组)
const tableData =
[
['编号', '交付日期', '故障率(%)', '使用时间(天)']
['tc001', '2024-03-09', 0.129, 5],
['tp046', '2024-02-24', 0.213, 24],
['tw097', '2024-03-29', 0.626, 9],
['th046', '2024-04-07', 0.374, 76],
]
exportExcel(tableData)
// 导出Excel
function exportExcel(data) {
// 创建sheet对象
const ws = XLSX.utils.aoa_to_sheet(data)
// 创建一个工作薄
const wb = XLSX.utils.book_new()
// 将sheet对象放入到工作薄
XLSX.utils.book_append_sheet(wb, ws, 'Sheet1')
// 设置每列宽度为15字符
const widthArr = []
for(let i = 0; i < theadArr.length; i++) {
widthArr.push({ wch: 15 })
}
ws["!cols"] = widthArr;
// 导出Excel文件
XLSX.writeFile(wb,'sheet.xlsx') // sheet.xlsx 为文件名
}