首页 > 解决方案 > 用于 Angular 的 Kendo UI 将选定的行导出到 Excel

问题描述

我正在为 Angular 使用 Kendo UI,我正在尝试将我的网格导出到 Excel。我已经实现了这样的解决方案:https ://www.telerik.com/kendo-angular-ui/components/grid/export/excel-export/

它确实有效。它导出我网格中的所有行。我的问题是我只想导出选定的行。我无法成功过滤 allData 方法以仅导出选定的行。

在我看来,从 allData 方法中调用的 process 方法可以采用具有 filter: 组件的 State 对象。但对于我的生活,我似乎无法让它发挥作用。谁能指出一个简单的例子,其中仅将选定的行导出到 Excel?

谢谢,约翰 B。

标签: kendo-uikendo-gridexport-to-excelkendo-ui-angular2

解决方案


我已经将选定的行和选择键实现为整行,这样当我导出时,我可以检索选定的行并修改 export allData 以导出选择数据(如果存在)。如果选择不存在,则导出所有数据。

     public mySelectionKey(context: RowArgs): string {

           // return context.dataItem.serialNumber + " " + context.index;
           return context.dataItem;
       }

     public allData(): ExcelExportData {
         let selInventory: Inventory[] = [];
         let result: ExcelExportData;

          selInventory = JSON.parse(JSON.stringify(this.mySelection));



       if (selInventory.length > 0) {
             result = {
              data: process(selInventory, {
              sort: [{ field: "serialNumber", dir: "asc" }]
             }).data
            };
        } else {
             result = {
               data: process(this.inventoryData, {
              sort: [{ field: "serialNumber", dir: "asc" }]
               }).data
            };
          }

           return result;
        }

推荐阅读