我们有一个Ag-Grid表,通过内置的复选框功能进行行选择。复选框通过isRowSelectable选项有条件显示:
isRowSelectable: function (rowNode) {
return rowNode.data ? rowNode.data.published === false : true;
}
已发布的列正在作为从另一列调用的模式的一部分进行更新。关闭模式时调用redrawRows:
modal.result.then(() => {
const row = params.api.getDisplayedRowAtIndex(params.rowIndex as number);
//this.gridApi?.redrawRows([row] as any);
this.gridApi?.redrawRows();
});
当模式关闭时,行中的显示值将被更新,但是,当发布的值设置为false时,复选框不会出现。如果我在Dev Tools中挂起一个断点,isRowSelectable代码似乎不会被命中。
任何建议将不胜感激。
干杯
- 约翰
3条答案
按热度按时间qoefvg9y1#
你能试试这个看看是否有效吗?
https://www.ag-grid.com/javascript-data-grid/data-update-transactions/
9jyewag02#
使用
refreshCells
https://www.ag-grid.com/react-data-grid/view-refresh/#redraw-rows
nuypyhwy3#
我在使用React的AG Grid中遇到了同样的问题。这个概念的一个变体工作:https://stackoverflow.com/a/74856318/3622569
当你的状态改变时,调用类似上面的代码再次运行检查。