【问题标题】:Export to CSV file using 'xlsx' in angular2在 angular2 中使用“xlsx”导出到 CSV 文件
【发布时间】:2018-06-14 03:31:07
【问题描述】:

我想使用“xlsx”npm 模块导出 csv 文件,但在文档中它没有显示任何直接方法。我有一个 json 输出,我想使用“xlsx”模块导出它。请帮我这样做。我试过这种方法但没有用

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

提前致谢

【问题讨论】:

  • “不工作”怎么办?发生什么了?有错误吗?它会默默地失败吗?导出的文件是否有错误的数据?龙会摧毁你的家园吗?

标签: angular csv typescript npm xlsx


【解决方案1】:

你的最后一行应该是

FileSaver.saveAs(new Blob([csvOutput]), `${fileName}_export_${new Date().getTime()}${CSV_EXTENSION}`);
  • 您必须使用“csvOutput”来生成 Blob。
  • 如documentation 中所述,将正确的参数传递给“saveAs”函数

修复完整代码:-

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

【讨论】:

    【解决方案2】:

    您正在使用 FileSaver.saveAs() 方法,所以希望您收到与 fs 相关的错误。 试试

     Xlsx.write(workbook,filename);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-12
      • 1970-01-01
      • 2013-09-03
      • 1970-01-01
      • 2018-02-16
      相关资源
      最近更新 更多