获取标题行 REACT XLSX

问题描述 投票:0回答:3

我当前正在处理 Excel 文档,但我只需要获取表标题名称。 到目前为止我的代码看起来像这样

if(file){
    let fileReader = new FileReader();
    fileReader.readAsBinaryString(file);
    fileReader.onload = (event) =>{
      let data = event.target?.result;
      let workbook = XLSX.read(data,{type:"binary"});
      console.log('WORKBOOK',workbook)
      workbook.SheetNames.forEach(sheet => {
        let rowObject = XLSX.utils.sheet_to_json(workbook.Sheets[sheet])
        console.log('RowObject',rowObject)
        setFile(rowObject)
      })
    }
  }

工作簿输出:

在 Sheets 对象内,我可以看到单元格,包括标题名称,如何只获取标题行?

reactjs xlsx js-xlsx
3个回答
1
投票

您可以通过以下方式获取标题。

let rowObject = XLSX.utils.sheet_to_json(workbook.Sheets[sheet], 
                                                 {header: 1,
                                                defval: ""})

0
投票

您可以将工作表转换为sheet_to_json帮助程序,您可以跳过第一行(标题)添加标题:1,另外,如果您设置defval:“”那么您将用空白文本替换默认值,您可以将其替换为未定义或您想要的任何其他值。

当您使用此参数应用此方法时,您将获得一个数组数组,该数组数组中的第一个数组是标题。

   const rowObject = XLSX.utils.sheet_to_json(workbook.Sheets[sheet], 
                                                 {header: 1,
                                                defval: ""})
    const headers = rowObject[0];

0
投票

您是否使用 shift() 方法删除某处的第一行而不是创建新数组?

© www.soinside.com 2019 - 2024. All rights reserved.