angular - Exportera till CSV-fil med 'xlsx' i angular2


Jag vill exportera en csv-fil med hjälp av 'xlsx'-npm-modulen men i dokumentationen visas ingen direkt metod för det. Jag har en json-utdata och jag vill exportera den med 'xlsx'-modulen. Snälla hjälp mig att göra det. Jag har försökt på detta sätt men det fungerar inte.

const CSV_TYPE ='text/csv;charset=utf-8';
const CSV_EXTENSION = '.csv';
const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);
const csvOutput: string = XLSX.utils.sheet_to_csv(worksheet);
FileSaver.saveAs(new Blob([buffer], {type: CSV_TYPE});, fileName + '_export_' + new Date().getTime() + CSV_EXTENSION);

Tack på förhand

Svar #1

Din sista rad bör vara

FileSaver.saveAs(new Blob([csvOutput]), `${fileName}_export_${new Date().getTime()}${CSV_EXTENSION}`);
  • Du måste använda 'csvOutput' för att generera Blob.
  • skicka korrekt parametrar till 'saveAs'-funktionen som beskrivs i dokumentationen

Fixad komplett kod:-

const CSV_TYPE ='text/csv;charset=utf-8';
const CSV_EXTENSION = '.csv';
const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);
const csvOutput: string = XLSX.utils.sheet_to_csv(worksheet);
FileSaver.saveAs(new Blob([csvOutput]), `${fileName}_export_${new Date().getTime()}${CSV_EXTENSION}`);

Svar #2

Du använder FileSaver.saveAs()-metoden, så förhoppningsvis får du ett fel relaterat till fs. försök

 Xlsx.write(workbook,filename);

Relaterade artiklar