Angularjs ui-网格过滤器取消事件

Angularjs ui-grid filter cancel event

您好,我正在使用 angular ui 网格,我在网格中进行了筛选和分组 默认情况下,我使用以下

扩展所有行
$scope.expandAll = function(){
    $scope.gridApi.treeBase.expandAllRows();
  };

 $timeout(function() {
    $scope.expandAll();
}, 500);

现在,如果用户筛选数据中不可用的任何列

然后删除或取消,不会自动展开

如上所示

我需要所有行在用户清除或取消过滤数据时自动展开

我发现有一个事件 filterChanged,但我不知道如何使用它

我正在使用以下 plunkr 进行测试

http://plnkr.co/edit/hhIW9R9aX1JlFe4nodJQ?p=preview

谢谢

修改你的onRegisterApi方法如下

onRegisterApi: function( gridApi ) {
  $scope.gridApi = gridApi;
  $scope.gridApi.core.on.filterChanged($scope, function() {        
    var grid = this.grid;
    var isfilterclear = true;
    angular.forEach(grid.columns, function( col ) {
      if(col.filters[0].term){
        isfilterclear = false;
      }
    });
    if(isfilterclear) {
        $timeout(function() {
            $scope.expandAll();
        },500);
    }
  });
}

查看 plunkr http://plnkr.co/edit/1FWDIe?p=preview