angular 7 如何将 ngx-datatable 内容导出到 Excel 表?

Jef*_*eff 2 export ngx-datatable angular

我有一个带有 ngx-datatable 和导出 excel 的 pb。我尝试使用带有 angular 7 的 fileSaver。我实现了一个导出按钮并在其上执行此操作:

var blob = new Blob([document.getElementById("exportable").innerText], {
  type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8"
  //type: "application/vnd.ms-excel;charset=utf-8"
});
Run Code Online (Sandbox Code Playgroud)

然后 saveAs(blob, "Report.xls");

"exportable" 是 ngx-datatable 的 ID:

<ngx-datatable id="exportable" #table
               class="mytable"
               [rows]="rows"
               [columns]="columns">
Run Code Online (Sandbox Code Playgroud)

但我获得了一个 xls 文件,白色一列,全部如下:

在此处输入图片说明

你知道如何获得像我的 ngx-datatable 这样的 excel 文件演示吗?

谢谢 !

Par*_*per 5

我有一个更好的实用解决方案。也适用于 ANGULAR 10+

在大多数情况下,data来自API

因此,如果我们直接将数据转换为 CSV,那就太好了。对的,这是可能的...

第1步 : npm install @ctrl/ngx-csv

第 2 步:module.ts

@NgModule({
 declarations: [
  ...
  ...
  ...
 ],
 imports: [
   ...
   CsvModule,
   ...
 ]
})
Run Code Online (Sandbox Code Playgroud)

第 3 步:component.html

<a csvLink [data]="yourDataObject">CSV</a>
Run Code Online (Sandbox Code Playgroud)

希望你觉得这个解决方案有帮助:)