如何在ag网格中订阅过滤器更改事件

时间:2018-04-23 06:43:11

标签: ag-grid

我遇到了一个问题,我需要在运行时显示在ag网格中过滤的行数。

如何在ag网格(javascript版本)中订阅过滤器更改事件?

3 个答案:

答案 0 :(得分:2)

对我来说,向 filterChanged 监听器添加一个方法是有帮助的:

<ag-grid-angular
    ...
    [rowData]="rowData"
    (filterChanged)="onFilterChanged($event)"
  >
  </ag-grid-angular>

然后我创建了一个函数,它使用 params api 来获取当前显示的行:

onFilterChanged(params: GridOptions): void {
console.log(this.numberOfRows = params.api?.getDisplayedRowCount());

}

我希望这对任何人也有帮助。

答案 1 :(得分:1)

我正在寻找如何订阅“ onFilterChange”事件的方式。 我需要跟踪每个过滤器更改的行数。 filteredRows是要显示的字段,其中包含已过滤的行数。

this.gridOptions.api.eventService.addEventListener('filterChanged', (e) => {
  this.filteredRows = e.api.paginationGetRowCount();
})

答案 2 :(得分:0)

Ag网格具有回调“ onFilterChanged”和“ onFilterModified”

var gridOptions = {
    columnDefs: columnDefs,
    rowData: null,
    enableFilter: true,
    onFilterChanged: function() {console.log('onFilterChanged');},
    onFilterModified: function() {console.log('onFilterModified');}
};

您可以在这里https://www.ag-grid.com/javascript-grid-filtering/

中找到更多详细信息