Extjs 从TreeModel获取Ext模型数据

Extjs 从TreeModel获取Ext模型数据,extjs,extjs4.2,Extjs,Extjs4.2,将数据添加到ExtJS树存储库时,数据将转换为树模型。在这些树模型上调用getData()时,它不仅返回在对象的原始Ext.data.Model中指定的字段,还返回一组其他字段,如qshowDelay、isFirst、allowDrag等 去除所有这些额外添加的字段的最佳方法是什么,这样我就可以只发布在对象的原始Ext.data.Model中指定的字段?对于添加的字段,persist属性为false。因此,如果您只需要用于过帐的修改字段,可以使用模型的modified属性,它将不包括添加的字段。

将数据添加到ExtJS树存储库时,数据将转换为树模型。在这些树模型上调用getData()时,它不仅返回在对象的原始Ext.data.Model中指定的字段,还返回一组其他字段,如qshowDelay、isFirst、allowDrag等


去除所有这些额外添加的字段的最佳方法是什么,这样我就可以只发布在对象的原始Ext.data.Model中指定的字段?

对于添加的字段,
persist
属性为
false
。因此,如果您只需要用于过帐的修改字段,可以使用模型的
modified
属性,它将不包括添加的字段。如果需要所有原始字段中的数据,可以执行以下操作:

   var fields = Ext.Array.filter(MyModel.getFields(), function(field){
       return field.persist!=false;
   });
   var data = Ext.copyTo(data, record.data, Ext.Array.pluck(fields, 'name'));