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



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

数据

现在当我根据"运动"过滤数据时,假设取消选中"空白" 我得到以下数据:- 过滤后的数据

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

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

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

您可以使用gridApi.filterManager.allFilters获取它

检查这个实时示例 ag-grid:内置过滤器 - 记录应用的过滤器。

应用ageyear筛选器,然后单击Log Filter按钮。

age: {column: Column, filterPromise: Promise, scope: null,

compiledElement: null, guiPromise: {...}}year: {column: Column, filterPromise: Promise, scope: null,
compiledElement: null, guiPromise: {...}}
__proto__:对象

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

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

对于

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

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

filterParams: {
newRowsAction: 'keep'
} 

最新更新