ag grid:js:如何查找应用了哪个过滤器

时间:2018-06-26 09:41:07

标签: ag-grid

我在ag网格中显示了数据。 它具有4列名称,年龄,运动并且具有以下数据:-

data

现在,当我基于“运动”过滤数据时,可以说取消选中“空白” 我得到以下数据:  filtered data

1)我的问题是如何获取对列应用哪个过滤器, 就像在这种情况下,在“运动”上应用“空白”。

2)如果我使用刷新数据 api.setRowdata(),应用于列的过滤器丢失

3 个答案:

答案 0 :(得分:2)

  

1。如何获取对列应用哪个过滤器

您可以使用gridApi.filterManager.allFilters

来获取它

查看此实时示例ag-grid: Built-In Filters - log the filters applied

应用ageyear过滤器,然后单击Log Filter按钮。

  

age:{列:列,过滤器承诺:承诺,范围:null,已编译元素:null,gui承诺:{…}}
  年:{列:列,过滤器承诺:承诺,范围:空,已编译元素:空,gui承诺:{…}}
  __proto__:对象

答案 1 :(得分:1)

ag-grid@19.0.0开始,获取设置所有可应用的过滤器,您可以利用:

const savedModel = gridApi.getFilterModel();
gridApi.setFilterModel(savedModel);

答案 2 :(得分:0)

对于

  
      
  1. 如果我使用api.setRowdata()刷新数据,则会丢失应用于列的过滤器
  2.   

我们可以对columnDefs对象中的列使用以下设置:-

filterParams: {
    newRowsAction: 'keep'
}