angular - Angular 2 Grid 数据绑定(bind)事件的 Kendo UI

标签 angular kendo-ui kendo-ui-angular2

有没有一种方法可以捕获网格的 dataBound 事件,类似于我们在 Kendo UI 的 jQuery 版本中使用的事件。数据加载到网格后,我需要执行一个操作。

有一个 dataStateChange 事件,但在初始加载期间不会触发此事件。

目前,我正在使用超时功能来延迟执行,但这不是永久可靠的解决方案。

谢谢。

最佳答案

我认为为此使用 Angulars 内置工具就足够了。

首先建议为网格创建一个新组件:

网格组件.html

<kendo-grid [data]="tableData" #myTable>
  <kendo-grid-column field="ListItem" title="List Item">
      <ng-template kendoGridCellTemplate let-dataItem>
        {{ dataItem.title }}
      </ng-template>  
  </kendo-grid-column>
</kendo-grid>

ngAfterViewInit Angular 的生命周期钩子(Hook)将在初始化后触发:

网格组件.ts

import { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';

@Component({
  selector: 'app-table',
  templateUrl: `./table.component.html`,
})
export class TableComponent implements AfterViewInit  {
  @ViewChild('myTable') myTable: ElementRef;

  public ngAfterViewInit() {
    console.log('loaded', this.myTable);
  }

  public tableData = [
    { title: 'Number 1', id: 'one'},
    { title: 'Number 2', id: 'two'},
  ];
}

Here is a Stackblitz

如果数组的内容发生变化,我们会想要选择 AfterContentChecked,它会在每次类成员发生变化并且 detectChanges 被调用后运行,可以这么说,当内容在组件的生命周期内重新呈现时。

关于angular - Angular 2 Grid 数据绑定(bind)事件的 Kendo UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42958116/

相关文章:

javascript - Angular 4如何显示隐藏嵌套表单组验证

angular - Ng2-charts 应用程序不显示图表

javascript - Angular 用指向页面片段的链接替换 ​​html 内容

kendo-ui - Kendo Grid - 组 展开折叠 事件

kendo-ui - Kendo grid 由于我的数据很大,如何在鼠标悬停在每一列上时显示行内容?

angular - Angular2 网格的 Kendo UI : add row form on bottom instead of top of list

javascript - 在 Angular 中生成 AWS 签名请求

javascript - 如何隐藏 Kendo UI Scheduler 小部件上时间线月份 View 的时间标题?

angular - Kendo Angular 2 网格过滤器不可用

kendo-ui-angular2 - Angular-Kendo treeview focus() 方法