首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ag-grid中的树过滤

ag-grid中的树过滤
EN

Stack Overflow用户
提问于 2021-05-17 19:51:39
回答 1查看 95关注 0票数 1

我们将企业ag-grid从16.0.1升级到25.1.0。因此,树过滤的算法被改变了。

以前它不包括不匹配的子项,但现在它显示了匹配父项的所有子项。

例如,如果我们有一个树数据:

代码语言:javascript
复制
[
    {
      path: ['One'],
    },
    {
      path: ['One', 'Twenty'],
    },
    {
      path: ['One', 'Thirty'],
    },
    {
      path: ['Two'],
    },
  ]

并使用以下设置:

代码语言:javascript
复制
autoGroupColumnDef: {
  filter: 'agTextColumnFilter',
  floatingFilter: true
},
treeData: true,
getDataPath: ({ path }) => path,

它们显示为

代码语言:javascript
复制
- One
  - Twenty
  - Thirty
- Two

在按“1”过滤之后,它现在看起来像

代码语言:javascript
复制
- One
  - Twenty
  - Thirty

  • 它包含了“一”的所有子元素:“二十”、“三十”,它们都不符合过滤条件。但在版本16.0.1中,此结果为

代码语言:javascript
复制
- One

  • 它只包含匹配的项目。在我们的过滤中,我们需要的正是这个“老式”算法,但我没有找到如何设置它。我试过

代码语言:javascript
复制
filterValueGetter: ({ data: { path } }) => path[path.length - 1]

但是它不起作用,因为匹配的父代的子代甚至都不会进入这个函数。它只在“一个”和“两个”父母上运行。

如果我想排除不匹配的父项的子项,如何设置此树形过滤?

EN

回答 1

Stack Overflow用户

发布于 2021-05-21 23:28:06

Ag Grid支持小组帮助了我,非常感谢!

也许他们的答案对其他人有用。

我们应该使用

代码语言:javascript
复制
excludeChildrenWhenTreeDataFiltering: true,

https://www.ag-grid.com/javascript-grid/tree-data/#tree-data-filtering中所述

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67569120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档