【问题标题】:ag-grid export excel api getDataAsExcelag-grid 导出 excel api getDataAsExcel
【发布时间】:2018-12-21 10:14:24
【问题描述】:

我在 Angular 6 版本中使用 ag-grid。

我为用户提供了导出按钮,用于将 ag-grid 数据导出到 excel 中。因此,在导出的点击事件中,我有以下代码。

onExport() {
  var params = {
            fileName: 'Users',
            allColumns: true
        };
    var content = this.gridOptions.api.getDataAsExcel(params);
    var workbook = XLSX.read(content, {type: 'binary'});
    var xlsxContent = XLSX.write(workbook, {bookType: 'xlsx', type: 'base64'});
    this.myService.download(params, xlsxContent);
}

这给了我以下错误。

UserrolesComponent.html:4 ERROR Error: Unrecognized tag: ![CDATA[URId]]|Workbook,false|Worksheet,false|Table,false
at viewWrappedDebugError (core.js:8439)
at callWithDebugContext (core.js:12214)
at Object.debugHandleEvent [as handleEvent] (core.js:11907)
at dispatchEvent (core.js:8561)
at core.js:9005
at HTMLButtonElement.<anonymous> (platform-browser.js:1215)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
at Object.onInvokeTask (core.js:4053)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420)
at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)

有什么问题?

【问题讨论】:

  • 我刚刚发现...我不需要额外的行...只需要调用 this.gridOptions.api.getDataAsExcel(params); .. 解决了我的问题

标签: excel angular export-to-excel ag-grid


【解决方案1】:

我在升级到版本 17 时也遇到了这个问题。我能够通过将参数中的 suppressTextAsCDATA 设置为 true 来解决它,同时仍然允许导出到 xlsx。

例子:

var params = {
    suppressTextAsCDATA: true
    // ...
};

var content = this.gridOptions.api.getDataAsExcel(params);
var workbook = XLSX.read(content, {type: 'binary'});
var xlsxContent = XLSX.write(workbook, {bookType: 'xlsx', type: 'base64'});
this.myService.download(params, xlsxContent);

【讨论】:

    【解决方案2】:

    我删除了下面的行......

    var content = this.gridOptions.api.getDataAsExcel(params);
    var workbook = XLSX.read(content, {type: 'binary'});
    var xlsxContent = XLSX.write(workbook, {bookType: 'xlsx', type: 'base64'});
    this.myService.download(params, xlsxContent);
    

    只保留...

    this.gridOptions.api.exportDataAsExcel(params);
    

    【讨论】:

      猜你喜欢
      • 2021-05-07
      • 2021-02-09
      • 2018-09-27
      • 2021-01-13
      • 2020-04-05
      • 2023-02-17
      • 2018-08-21
      • 2020-05-20
      • 2020-05-29
      相关资源
      最近更新 更多