javascript - 无法将数据(addRow)写入Nodejs中的Excel文件
问题描述
我正在尝试使用 ExcelJS 库将数据写入 Excel 文件。我成功地创建了工作表并添加了列数据。
但是,在尝试实现 addRow() 或 addRows() 方法时,数据不会添加到 Excel 工作表中。
这是我尝试过的代码:
const ExcelJS = require('exceljs');
var workbook = new ExcelJS.Workbook();
var worksheet = workbook.addWorksheet('Payment Data');
worksheet.columns = reportHeaders; //reportHeaders is an array of header objects
我能够看到在 excel 表中成功创建的列。麻烦从下面开始,我试图将数据添加到行中:
第一种方法:
worksheet.addRows(excelData);//excelData is an array of data objects
方法二:
for(var rowItem in excelData){
worksheet.addRow(excelData[rowItem]);}
但是,似乎这些方法中的任何一种都不适合我。最后保存文件:
workbook.xlsx.writeFile('PaymentData.xlsx')
有什么我想念的吗?任何帮助将不胜感激。
解决方案
所以你的代码的问题是,你试图将数据添加到列中而不指定数组key
中的属性,columns
因此它无法添加数据。
我将worksheet.columns
数组修改为如下所示:
worksheet.columns = [
{ header: "A", key: "a" },
{ header: "B", key: "b" },
];
这将解决您的问题
推荐阅读
- flutter - 关闭 Stream 后我应该取消 StreamSubscription 吗?
- android - 如何更改颜色工具栏图标?
- python - 递增数字直到它与另一个数字匹配
- c++ - 是否可以将类方法作为比较器?
- javascript - 编辑只读 javascript 对象
- bash - 使用 errno -l 命令查看 unix 中的错误代码列表
- reactjs - 单击按钮和占位符时对输入的本机更新值作出反应
- python - 在 google colab 中使用 c++ python 扩展
- javascript - 按钮未定向到 react-app 中的电子邮件
- ios - 具有指定 AspectRatio 的 HStack { ... } 中的子项高度相等