当数据发生变化时,如何刷新Angular 2 Kendo网格?
private trash() { this.gridView.data.splice(index, 1); //I wish to refresh here }
如果将修改后的数据重新分配给网格的数据属性,则会触发自动更改检测,一切都将按预期工作 . 例如 . :
data.splice(index, 1); this.gridView.data = data;
↑ This is the preferred way to trigger change detection and update the grid. ↑
或者,如果您只想修改基础数据,则必须手动通知Angular更改 . 有几种方法可以在Angular 2中触发更改检测 . 例如,您可以在组件的构造函数中注入ChangeDetector并调用detectChange . 例:
import { Component, OnInit, ChangeDetectorRef } from '@angular/core'; constructor(private cd: ChangeDetectorRef) { } private trash() { this.gridView.data.splice(index, 1); this.cd.detectChanges() }
一般情况下,我建议您通过网络阅读Angular 2如何执行变更检测以及如何在需要时手动触发变更检测 .
不使用分页选项
2 回答
如果将修改后的数据重新分配给网格的数据属性,则会触发自动更改检测,一切都将按预期工作 . 例如 . :
↑ This is the preferred way to trigger change detection and update the grid. ↑
或者,如果您只想修改基础数据,则必须手动通知Angular更改 . 有几种方法可以在Angular 2中触发更改检测 . 例如,您可以在组件的构造函数中注入ChangeDetector并调用detectChange . 例:
一般情况下,我建议您通过网络阅读Angular 2如何执行变更检测以及如何在需要时手动触发变更检测 .
不使用分页选项