vue2 导出Excel文件
1.安装依赖
npm install xlsx file-saver
2.使用
<template>
<button @click="exportToExcel">导出Excel</button>
</template>
<script>
import * as XLSX from 'xlsx';
import { saveAs } from 'file-saver';
export default {
methods: {
exportToExcel() {
// 假设你有一个表格数据的数组
// const data = [
// ["姓名", "年龄", "职业"],
// ["Alice", 28, "Engineer"],
// ["Bob", 22, "Designer"]
// ];
let data = []
let res.data = [
{
hangingTime: "2025-01-20 16:00",
codes: ["AB51KB16002534", "AB51KB16002278", "AB51KB16002604", "AB51KB16002284", "AB51KB16002570",…]
},
{
hangingTime: "2025-01-21 16:00",
codes: ["AB51LB16000881", "AB51LB16000877", "AB51LB16000879", "AB51LB16000829", "AB51LB16000830",…]
},
...
]
res.data.map((io) => {
let newArray = io['codes'].map(item => [item])
// console.log(newArray)
data.push(['阳极下挂时间' + io.hangingTime], ['产品流水号'], ...newArray)
})
console.log(data)
// 将数据转换为工作表
const worksheet = XLSX.utils.aoa_to_sheet(data);
// 创建工作簿并添加工作表
const workbook = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
// 生成Excel文件
const excelBuffer = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });
// 使用blob和FileReader创建一个Blob URL
const dataBlob = new Blob([excelBuffer], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8' });
const blobUrl = window.URL.createObjectURL(dataBlob);
// 使用saveAs下载文件
saveAs(dataBlob, 'export.xlsx');
// 清理
window.URL.revokeObjectURL(blobUrl);
}
}
};
</script>
效果
参考文章
【Vue】导出Excel(xlsx和file-saver)_xlsx file-saver-CSDN博客
vue json格式导出excel文件_vue json转excel-CSDN博客