AgGrid“列工具面板”复选框,如何触发onCheck事件?

问题描述 投票:0回答:2

我正在使用Aggrid,我需要在侧边栏(列工具面板)中触发onCheck事件。 tldt:有没有办法获取侧边栏(列工具面板)的onCheck事件?

我在这里找不到信息:https://www.ag-grid.com/javascript-data-grid/side-bar/

这里也没有工具面板列

我的需求如下: 当 aggrid 第一次加载时,我的列可以是可见的,也可以是不可见的。 然后我可以在侧栏中勾选一些隐藏的列来显示它。 但有些列可以有子列(不是 aggrid 子列),所以如果我勾选父列(不是 aggrid 父列),则也必须勾选子列。

问题是子级也可以是父级,所以我使用了 onColumnVisible 事件,并且它是级联的。 我不想要级联效应。 所以我需要一个 onCheck 事件。

我使用了 onColumnVisible 事件,它随着子项变得可见并再次触发而级联。我不想要级联效应

我期望有一个 onCheckEvent,所以只有此列可以触发我的函数来勾选子项。

reactjs typescript ag-grid ag-grid-angular ag-grid-react
2个回答
0
投票

我终于成功避免了级联。 onColumnVisible 事件有一个名为“source”的属性,当从“列工具面板”触发 onColumnVisible 时,该属性等于“toolPanelUi”

Object { type: "columnVisible", visible: true, columns: (1) […], column: {…}, source: "toolPanelUi", api: {…}, columnApi: {…}, context: undefined }

并且当非直接更改时具有值“gridOptionsChanged”

Object { type: "columnVisible", visible: true, columns: (2) […], column: null, source: "gridOptionsChanged", api: {…}, columnApi: {…}, context: undefined }

因此我可以过滤事件源以避免级联。


0
投票

我想做类似的事情,当用户从侧边栏中选择一列时,我想进行 api 调用来获取该列。关于如何做到这一点有什么想法吗?我能够获取事件,但不确定当用户在侧边栏中选择新列时如何调用 getRows()

© www.soinside.com 2019 - 2024. All rights reserved.