【问题标题】:Extjs 6.6 Filter TreepanelExtjs 6.6 过滤器树形面板
【发布时间】:2026-02-05 03:10:01
【问题描述】:

我正在尝试根据用户输入过滤我的树形面板,我正在按照这个小提琴来实现这一点,https://fiddle.sencha.com/#view/editor&fiddle/1oso,小提琴中的 extjs 版本是 5.1,它工作得很好,但我正在尝试 6.6 版本,结果是不同的,在 6.6 上,只有当我点击一个节点时,树才会正确“更新”,正如在这个小提琴https://fiddle.sencha.com/#view/editor&fiddle/2k7i 中看到的那样(尝试在搜索字段上写“触摸”,或者写一个不匹配的随机名称任何节点);

有解决此问题的方法吗?或其他实现相同目标的方法?

【问题讨论】:

    标签: javascript extjs extjs6-classic


    【解决方案1】:

    我只是简化了过滤功能,在 extjs 6.6 中运行良好。

    Here is an example on fiddle

    看看这是否是你想要实现的目标。

    【讨论】:

    • 您的解决方案的唯一问题是它只过滤叶节点,尝试搜索“Touch”或“chores”
    • 我刚刚更新了小提琴,看看吧。另外,我添加了所有父母的显示。您可以删除它 - 只需删除 if (node.parentNode) { var checkParent = checkParentNodeFn(node.parentNode); if(checkParent){ return true; } }
    • 完美,就像一个魅力,我只是添加了node.parentNode.expand(),以扩展父节点以防它被折叠