vue3实现表格数据导出Excel(自定义表头中文名)
1.安装依赖
npm install xlsx --save
2.引用依赖
import * as XLSX from 'xlsx';
3.1直接导出excel
const data = XLSX.utils.json_to_sheet(tableData.value)
const wb = XLSX.utils.book_new()
XLSX.utils.book_append_sheet(wb, data, 'test-data')
XLSX.writeFile(wb,'test.xlsx')
3.2excel表头转为中文导出
const dowloadExcel = () => {
const data = XLSX.utils.json_to_sheet(tableData.value);
const wb = XLSX.utils.book_new();
let excelGS = {
ms: '11111',
qxq: '111111111区',
pwmc: '11111',
pfwh: '11111号',
pflx: '11111类型',
pfrq: '11111日期',
pwqkzmj: '11111面积',
pwqknydzmj: '11111总面积',
pwqknydqzgd: '11111其中耕地',
pwqkjsyd: '批11111用地',
pwqkwlyd: '11111用地',
gdmj: '供11111积',
zdmj: '11111积',
sqtzchqkwlyd: '申11111用地',
sqtzchqkjsyd: '申11111用地',
sqtzchqknydqzgd: '申11111中耕地',
sqtzchqknydmj: '申11111况-农用地面积',
sqtzchqkzmj: '11111情况-总面积',
bz: '备注',
zbttqk: '11情况',
xzfjlqk: '11情况',
tzchyy: '11原因',
yqcxmj: '11面积',
bpxzbgk: '111库(年)',
tjsj: '提交时间',
};
for (let key in data) {
if (data.hasOwnProperty(key)) {
if (excelGS[data[key].v]) {
data[key].v = excelGS[data[key].v];
}
}
}
XLSX.utils.book_append_sheet(wb, data, '11111');
XLSX.writeFile(wb, '11111表.xlsx');
};