过滤Sencha Touch NestedList TreeStore

时间:2013-10-31 13:22:52

标签: javascript sencha-touch-2

我正在尝试使用Sencha Touch对应用程序进行编码。 对于我创建了NestedList的项目列表,它显示了TreeStore中的节点,这些节点直接将其节点作为对象列表。 根据用户的登录状态,我想从列表中过滤掉一些节点。

我的设置如下:

//This is the filter function
var lpFilter = new Ext.util.Filter({
  filterFn: function(item) {
    return item.get('type') == 'text';
  }
});

//Create the TreeStore
var myTreeStore = Ext.create('Ext.data.TreeStore', {
  fields: [
    'title','content', 'type', 'xtype', {name: 'leaf', defaultValue: true}
  ],
  root: {
    leaf: false
  },
  filters: [
    lpFilter
  ]
});

//Add the data
myTreeStore.setData(media);

//Nestedlist
var myList = new Ext.NestedList({
  title: 'Mediathek',
  iconCls: 'star',
  displayField: 'title',
  [...]
  store: myTreeStore
});

当我运行应用程序时,数据被过滤,商店只有2个项目(而不是5个),但我的嵌套列表仍然显示所有这些项目。

嵌套列表是否只是忽略了我的过滤并使用了商店的“all”属性? 或者我是否以错误的方式使用过滤器?

0 个答案:

没有答案