我使用 store.filter(string, string)
方法将过滤器显式添加到 Ext.data.Store
。
但是,我不知道如何从商店中删除过滤器。因此,即使在使用 store.load()
重新加载后,过滤器也始终适用。我看到的唯一解决方法是重新启动整个网络应用程序。
如何从 Ext.data.Store
中删除过滤器?
最佳答案
除了 Mchi 的回答,我想说的是可以删除特定的过滤器(clearFilter() 将它们全部删除)。
为此,不要使用 store.filter('property_to_filter','value')
方法,而是使用:
store.filters.add('filtersId', new Ext.util.Filter({
property: 'property_to_filter',
value: 'value'
}));
store.load();
删除过滤器使用:
store.filters.removeAtKey('filtersId');
更新(针对 > 4.2.0)
在 4.2.0 中添加了添加/删除特定过滤器的方法:
store.addFilter({
id: 'filtersId',
property: 'property_to_filter',
value: 'value'
});
store.removeFilter('filtersId');
有关更多信息,请查看文档:Ext.data.Store.addFilter , Ext.data.Store.removeFilter
关于javascript - 从 ExtJS 中的商店中删除过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7275099/