【问题标题】:How to get the right Filter Model in ag-grid?如何在 ag-grid 中获得正确的过滤器模型?
【发布时间】:2020-11-14 19:00:45
【问题描述】:

我想显示用户当前选择的过滤器。所以我正在使用 onFilterChanged 回调函数获取过滤器模型:

onFilterChanged(params) {
    const filterModel = this.gridApi.getFilterModel();
    console.log(filterModel);
  }

一切正常,除了一个场景,我们过滤第一列并尝试过滤第二列。例如,如果您在 plunker 示例中看到:

https://plnkr.co/edit/X6LlP2XIOaEeeW7I?preview

我将第一列过滤为 Michael Phillips 和 Abhinav Bindra,然后我得到 filterModel 为

athlete:
    filterType: "set"
    values: Array(2)
        0: "Abhinav Bindra"
        1: "Michael Phelps"
        length: 2

这是正确的。然后我尝试过滤第二列,国家,然后我得到 filterModel 为

athlete:
    filterType: "set"
    values: (2) ["Abhinav Bindra", "Michael Phelps"]
country: {values: Array(109), filterType: "set"}

这是不正确的。正如我期望获得的国家价值为印度或美国,而不是整个 109 个国家/地区。

有趣的是,过滤器 UI 仅将这两个国家印度和美国显示为复选框。

我如何获得正确的过滤器模型,以便在我的自定义组件中显示?

编辑:如果我使用浮动过滤器组件,则值会正确显示在浮动过滤器中。我想获得那个浮动过滤器组件的模型。

任何指针将不胜感激。
提前致谢!!

【问题讨论】:

    标签: angular ag-grid ag-grid-angular


    【解决方案1】:

    使用gridOptions.api.getFilterInstance('gold').getValueModel().availableValues 获取所有可用值。

    gridOptions.api.getFilterInstance('your column name here').查看下面的截图。

    【讨论】:

      猜你喜欢
      • 2017-09-18
      • 2021-05-07
      • 2018-09-02
      • 2020-11-03
      • 2017-04-18
      • 2017-09-18
      • 2020-06-12
      • 2019-07-28
      • 2016-06-15
      相关资源
      最近更新 更多