我正在使用SheetJS js-xlsx
反应库将数据导出到 excel 文件。
我正在尝试导出一个 excel 文件,其中将在必要时为数据提供动态行跨度。一个简单的方法是使用table_to_book()
生成 excel 文件的方法,就像它在 HTML 表中一样。
var wb = XLSX.utils.table_to_book(document.getElmentById(#idOfTheTable));
这确实符合我的目的,但是,我想知道是否有任何方法可以为这种数据结构从 JSON 导出 excel 文件:
const purchaseJsnData= [
{
"id": "0",
"PRNumber": "",
"TotalAmount": 110,
"CostCenter": "",
"Details": [{"ItemDescription": "item1", "Quantity": 1},
{"ItemDescription": "item2", "Quantity": 3}]
},
{
"id": "10",
"PRNumber": "111",
"TotalAmount": 520,
"CostCenter": "",
"Details": [{"ItemDescription": "i1", "Quantity": 5},
{"ItemDescription": "i2", "Quantity": 6}]
}
]
以下行为纯 JSON 数据导出 excel,其中没有子数组值。
XLSX.utils.sheet_add_json(ws, purchaseJsnData, { skipHeader: false, origin: "A5" });
从直接 HTML 表中导出 excel 允许我仅导出当前页面数据(因为有分页),我想导出整个数据集,这就是为什么要寻找一种从 JSON 格式导出 excel 的方法。