首页 > 解决方案 > 如果使用带有 Angular 6 的 ag-Grid 执行全行更新,则获取已编辑的列(带有数据)

问题描述

我已经实现了全行更新,但在更新行之前,我需要获取已编辑的列以及列中存在的相应数据。为了在更新行之前对数据执行一些验证以显示错误消息,我正在使用(rowValueChanged)="onRowValueChanged($event)"方法。

标签: angular6ag-gridag-grid-angularag-grid-validation

解决方案


我相信要做到这一点,您需要同时监听 rowValueChanged、cellValueChanged 事件并添加带有编辑值的标志

  onRowValueChanged(event) {
    console.log(`Changed Values = ${event.node.changedValues.join(',')}`);
    // do validations
  }

  onCellValueChanged(event) {
    if (event.newValue !== event.oldValue) {

      if (!event.node.changedValues)
      event.node.changedValues = [];

      event.node.changedValues.push(event['column']['colId']);
    }
  }

推荐阅读