Angular6 如果使用角度为6的ag Grid执行全行更新,则获取编辑的列(带数据)

Angular6 如果使用角度为6的ag Grid执行全行更新,则获取编辑的列(带数据),angular6,ag-grid,ag-grid-angular,ag-grid-validation,Angular6,Ag Grid,Ag Grid Angular,Ag Grid Validation,我已经实现了完整的行更新,但是在更新行之前,我需要获得哪些列已经被编辑,以及列中存在的相应数据。为了在更新行之前对显示错误消息的数据执行一些验证,我使用了(rowValueChanged)=“onRowValueChanged($event)”方法。我相信要完成这一点,您需要同时监听rowValueChanged和cellValueChanged事件 并添加带有已编辑值的标志 onRowValueChanged(event) { console.log(`Changed Values

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

我相信要完成这一点,您需要同时监听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']);
    }
  }

使用ag grid版本18.0如果您同时使用这两个事件,onCellValueChanged会在编辑字段时设置它,然后您可以在OnRowValueChangedHanks中使用它来回答和解释逻辑,这正是我要找的。实际上,我使用的是一个列的固定值下拉列表,因此,单击一行以编辑具有该列的行(最初值为null),下拉列表值也将初始化为该行下拉列表中的第一个选项,因此,更改的列也包含该列名。但我没有编辑任何东西