Kendo UI for Angular2 - Grid 如何动态添加列

Kendo UI for Angular2 - Grid How to Add Columns Dynamically

对于 Grid compomemet,如果我已经在 html 中预定义了几个列,但结果集可以在预定义列之上有各种附加列,我如何动态添加这些列?

在我检索数据之前无法知道这些额外的列是什么?在使用 ViewChild 指令获取数据后,我能够访问网格组件,但是查看网格的列数组(如对象),我看不到以编程方式动态添加列的方法。

您可以使用 ngFor 生成可变数量的列:

    <kendo-grid [data]="gridData">
      <ng-template ngFor [ngForOf]="columns" let-column>
        <kendo-grid-column field="{{column}}"></kendo-grid-column>
      </ng-template>
    </kendo-grid>

如果您想尝试一下,请参阅文档中的 "showing and hiding columns" 演示(在 columns examples 中向下滚动)。

 <kendo-grid [data]="gridData">
 </kendo-grid>

可以直接添加"gridData"不带列名