EXTJS 4.1 如何在不重新加载 TreeStore 的情况下删除过滤器
Posted
技术标签:
【中文标题】EXTJS 4.1 如何在不重新加载 TreeStore 的情况下删除过滤器【英文标题】:EXTJS 4.1 how to remove filter without reloading of TreeStore 【发布时间】:2012-07-27 15:36:21 【问题描述】:我有一个 TreeStore,其中填充了来自 Json 的数据。 我正在对其应用过滤器。
if ( !filter.filterFn(node) )
node.remove();
第一次搜索尝试一切正常,但在第二次尝试中,并非所有数据都用于搜索。为了使用所有数据,我需要为存储执行 .load() 。 但在这种情况下,将发送对服务器的请求并应用过滤器。 有没有办法实现这种行为?
【问题讨论】:
【参考方案1】:我不确定我是否完全遵循您的问题,但我认为您想在应用新过滤器之前删除较早的过滤器。
您可以在调用之前添加一行以添加过滤器。
类似这样的:
yourTreeStore.filters.clear();
(其中yourTreeStore
是对您要添加过滤器的Ext.data.TreeStore
的引用)
【讨论】:
好吧,我不想使用对服务器的请求重新加载以重新加载树。有什么方法可以隐藏/显示节点而不删除它?以上是关于EXTJS 4.1 如何在不重新加载 TreeStore 的情况下删除过滤器的主要内容,如果未能解决你的问题,请参考以下文章