Angular 6 создает файл Excel с sheetJs, но удаляет некоторые ключи? - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть этот json:

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

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

Я хочу создать файл Excel, используя SheetJs js-xlsx для Angular 6, это моя попытка:

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' });

это генерируетфайл Excel со всеми объектными ключами json и работает отлично !!.Но я хочу создать файл Excel ТОЛЬКО с именем "name" и "city" .Это возможно?Спасибо заранее.

1 Ответ

0 голосов
/ 03 апреля 2019

Вы можете отобразить свои данные перед созданием файла 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));
...