我有一个使用内存代理的商店。商店通过调用loadRawData
方法获取数据。我现在使用roweditor&amp ;;对这些数据进行一些更改。 rowaction导致脏记录,这似乎是一个正确的行为,但这个商店将永远无法同步任何数据,所以为什么所有单元格都标有这个红色三角形?
我想我必须在这里监督一些事情。如何在没有在修改过的田地上失去轨道的情况下保留这些三位一体?
我正在使用ExtJS 4.2.1
答案 0 :(得分:4)
如果您不想在网格上使用小红色三角形,可以在viewConfig中设置以下内容。
markDirty: false
http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.view.Table-cfg-markDirty
答案 1 :(得分:2)
由于LUKE已经回答了问题,我将仅添加一些关于记录
的脏标志的附加信息
注意:
dirty
标记被标记为 readonly ,这是有原因的。
至少有一个原因:
所以改变dirty
标志将没有任何影响,因为它发生在所有这一切之后!因此,记录将被标记为脏例如网格已经用红色三角标记了所有已更改的列。
要阻止记录设置它的dirty
标志,请使用beginEdit()
/ endEdit()
块并且不要使用set,因为set()
将始终设置脏标志。< / p>
以下示例反转布尔值,不影响dirty
标志
record.beginEdit();
record.data.active = !rec.data.active;
record.endEdit();