AgGrid
默认会修改基础行数据。
这打破了“不变性规则”,因为我的模型存储在redux中。当我使用immer
时,我也得到了
无法分配为只读对象“#”的属性“ version”
如何防止AgGrid
自动向模型提交值。我想手动向存储进行调度,以进行更改。
答案 0 :(得分:1)
解决方案是将“ valueSetter”属性添加到网格列的 定义。此属性的值应为将 接收新值,然后使用该新值更新 商店。
原始答案:AG-Grid: Cannot update field in Grid as it is read only
答案 1 :(得分:0)
我不使用ag-grid
,但是您可以在文档(自定义单元格渲染器/编辑器)中找到一些有用的信息。
第一名:Cell editor
// Gets called once when editing is finished (eg if enter is pressed). // If you return true, then the result of the edit will be ignored. isCancelAfterEnd?(): boolean;
可能使用此道具,您可以调度更新操作并返回true
以放弃/阻止本地修改。 OTOH-返回'false'可以作为'optimistic update'-由于不变性和标准事件处理,这似乎是不可能的。