我确实有以下两种方法:
print(type(value))
当单击每行上的按钮时,我确实要删除自己的ag-grid中的一行。但是,如果在未首先单击行本身的情况下单击按钮,则无法存储选定的行(未定义)。
我发现在onRowClicked方法中,即使我仅单击按钮(未选择行),也可以访问我选择的行。
所以,我的想法是将行放入 onRowClicked()中,然后将其传递给 onButtonClicked()。
默认情况下,由于应用程序的限制, onButtonClicked()称为 BEFORE onRowClicked(),这会导致 this.property 在 onButtonClicked()中是未定义的。
如何在 onButtonClicked()之前强加 onRowClicked()?
答案 0 :(得分:0)
如果您将按钮用作网格的一部分,则可以利用cellclicked事件并摆脱buttonClicked和rowClciked事件。 Cellclick应该能够处理您的请求! https://www.ag-grid.com/javascript-grid-events/
希望有帮助!
答案 1 :(得分:0)
您可以在按钮单击事件中设置标志,如果在触发行单击事件时设置了标志,则处理命令:
private rowClicked : any;
private shouldProcessCommand = false;
onButtonClicked() {
this.shouldProcessCommand= true;
}
onRowClicked(event) {
this.rowClicked = event.data;
if (this.shouldProcessCommand) {
this.shouldProcessCommand= false;
// Do some processing with rowClicked
...
}
}
有关演示,请参见this stackblitz。