Ag grid 使用';保存';和';取消';Ag网格单元编辑中的按钮

Ag grid 使用';保存';和';取消';Ag网格单元编辑中的按钮,ag-grid,ag-grid-angular,Ag Grid,Ag Grid Angular,我在Angular应用程序中使用Ag网格,网格中的数据由web服务填充。我在这个网格中实现了单元格编辑,所以当我单击其中一列时,整行都将可编辑,当我在网格外单击时,停止编辑。以下是html和组件文件中的代码: <ag-grid-angular #agGrid style="width: 100%; height: 600px;" class="ag-theme-balham left" [rowData]="rowData" [columnDefs]="columnDefs"

我在Angular应用程序中使用Ag网格,网格中的数据由web服务填充。我在这个网格中实现了单元格编辑,所以当我单击其中一列时,整行都将可编辑,当我在网格外单击时,停止编辑。以下是html和组件文件中的代码:

<ag-grid-angular #agGrid style="width: 100%; height: 600px;" class="ag-theme-balham left" [rowData]="rowData" [columnDefs]="columnDefs"
                            [gridOptions]="gridOptions" rowSelection="multiple" pagination=true (rowSelected)="onRowSelected($event)">
                        </ag-grid-angular>

列定义是根据web api的响应动态生成的。当编辑停止时,如果数据发生变化,那么我必须调用web api来更新数据,所有这些都按照预期工作。但我想在网格上方添加一个保存和取消按钮,当用户单击“仅保存”时,再调用web api,单击“取消”按钮应将网格数据恢复为旧值。我遇到了api stopEditing(true),但它不起作用。请告诉我如何实现此功能。

请尝试将关闭焦点时的
停止编辑设置为
false

然后在网格上方添加两个按钮“保存”和“取消”

单击“保存”。调用定义为

onSave() {
  this.agGrid.api.stopEditing();
  this.callWebApi();
}
单击cancel,调用定义将被删除的
onCancel
函数

onCancel() {
  this.agGrid.api.stopEditing(true);
}

让我知道这是否是您要查找的内容。

这与我要查找的内容非常接近,例如,如果我收到来自API的错误消息“业务规则验证”,会发生什么情况。“停止编辑”后如何“取消”行上的更改?我想从“getEditingCells”中获取值,但是我必须从左到右一点,并且我试图避免这种情况。谢谢@Sébastienrich
stopEditing()
采用可选的布尔参数,您可以使用该参数来表示编辑应该取消而不是保存。
onCancel() {
  this.agGrid.api.stopEditing(true);
}