vuejs导入excel(多个Sheet表全部解析)

2025年03月08日 建站教程

上次做了一个vuejs导入excel(把excel表格解析成JSON数据),后来用的时候发现它不支持多个Sheet表数据解析,研究了一下代码,需要做一些小修改。

找到UploadExcel组件,搜索workbook.SheetNames[0]

const firstSheetName = workbook.SheetNames[0]; //执行第一个Sheet表
const worksheet = workbook.Sheets[firstSheetName];
const header = this.getHeaderRow(worksheet);
const results = XLSX.utils.sheet_to_json(worksheet);

用以下代码替换:

//支持多Sheet
let header = [];
let results = [];
for (let i = 0; i < workbook.SheetNames.length; i++) {
  const firstSheetName = workbook.SheetNames[i];
  const worksheet = workbook.Sheets[firstSheetName];
  if (typeof worksheet.A1 != "undefined") { //判断一下有没有空表
    header = this.getHeaderRow(worksheet);
    results.push(XLSX.utils.sheet_to_json(worksheet));
  }
}
results = results.flat();//flat数组扁平化

本文链接:http://so.lmcjl.com/news/24544/

展开阅读全文
相关内容