ag-grid如果过滤器为空则显示无数据

时间:2018-03-08 16:03:09

标签: angular ag-grid

我正在使用AngularJS的 ag-grid 免费版。

是否可以仅在任何过滤器具有内容时显示行数据? 我已经阅读了所有文档和明显的网格选项,但我什么也没找到。

1 个答案:

答案 0 :(得分:1)

按照以下步骤进行操作。

  1. 使用(filterChanged)="onFilterChanged($event)"事件,您可以确定过滤器是否已应用。
  2. 代码:

    onFilterChanged(params){
      let filters = params.api.filterManager.allFilters;
      this.filterEnabled = false;
      for(var key in filters) {
        if(filters[key].column.filterActive) {
          this.filterEnabled = true;
          break;
        }
      }
    }
    
    1. 在事件中设置标记filterEnabled,使用它来决定是否显示数据。 [rowData]="filterEnabled && rowData"
    2. 您可以找到工作插件示例: ag-grid - don't show data if filter is enabled

      PS:此解决方案存在一个问题:您需要输入两次过滤字符串以启用过滤器。但我希望你能从中获得帮助。