属性“ resetFilterValues”在类型“ IFilterComp”上不存在

时间:2019-08-02 14:43:14

标签: ag-grid ag-grid-angular

我正在尝试在加载新数据后重置过滤器,以解决“全选”问题,但是使用resetFilterValues()函数时出现以下错误。不知道可能是什么问题。我一直在查看文档,并且看起来该函数是正确的,但是当我转到IFilterComp的定义时,没有函数“ resetFilterValues()”

“错误TS2339:类型'IFilterComp'上不存在属性'resetFilterValues'。”

我正在使用最新版本的ag-grid 21.1.0和angular框架。

  var columns = this.gridOptions.columnApi.getAllColumns();
  columns.forEach(col => {
    var filter = self.gridOptions.api.getFilterInstance(col.getColId());
    if (filter.isFilterActive()) {
      var filterModel = filter.getModel();
      filter.resetFilterValues();
      filter.setModel(filterModel);
    }
    else {
      filter.resetFilterValues();
    }
  });

朋克歌手-http://plnkr.co/edit/yb8tHVIJpz6MVytS3Vb8?p=preview

请在单击“重置过滤器”按钮后检查控制台日志。我正在使用gridOptions api调用,因为所有组件/功能/ api都绑定到gridOptions。

1 个答案:

答案 0 :(得分:0)

此行引发错误的原因是因为resetFilterValues()是here中所述的设置过滤器api,不适用于其他类型的过滤器。

重置所有过滤器的另一种方法是使用example所示的api函数

clearFilters() {
        this.gridApi.setFilterModel(null);
        this.gridApi.onFilterChanged(); 
}