0

我有这个 JSON:

[{"name":"peter",
"surname":"cage",
"nickname": "peterbob", 
"city":{"id":130, "name":"GreatCity"}
},

{"name":"james",
"surname":"parot",
"nickname": "mrj", 
"city":{"id":142, "name":"OtherCity"}
},
...]

我想为 Angular 6 使用 SheetJs js-xlsx 生成一个 Excel 文件,这是我的尝试:

const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(myjson);
const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };
const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });

这会生成一个包含所有 JSON 对象键的 Excel 文件,并且工作正常。但我想生成一个只有 "name" 和 "city" name的 Excel 文件。那可能吗?

4

1 回答 1

0

您可以在创建 excel 文件之前映射您的数据:

const data = JSON.parse(myjson).map(i => ({ name: i.name, city: i.city }));
const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(JSON.stringify(data));
于 2019-04-03T07:50:49.827 回答