从TreeModel获取Ext模型数据

时间:2014-04-11 17:22:47

标签: extjs extjs4.2

将数据添加到ExtJS TreeStore时,数据将转换为TreeModel。当你在这些TreeModel上调用getData()时,它不仅返回对象的原始Ext.data.Model中指定的字段,还返回一些其他字段,如qshowDelay,isFirst,allowDrag,...

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

1 个答案:

答案 0 :(得分:1)

添加的字段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'));