$scope.gridApi.core.getVisibleRows 未使用列清除过滤器正确更新
$scope.gridApi.core.getVisibleRows does not update correctly with column clear filter
如何获取"Showing Items"中实际存在的行?
$scope.gridApi.core.getVisibleRows 似乎给出了不一致的值。
http://plnkr.co/edit/FRaCNxKhZ242rFyqNDkm?p=preview
gridApi.core.on.filterChanged($scope, function () {
$timeout(function () {
var allvisiblerows = $scope.gridApi.core.getVisibleRows($scope.gridApi.grid);
$scope.visibleRowsCount = allvisiblerows.length;
}, 0);
});
filterChanged
的问题是一旦过滤器发生变化就会引发它,但那时数据不一定已被过滤。要解决此问题,您可以监听 rowsRendered
事件而不是监听 filterChanged
事件,这将解决问题。
gridApi.core.on.rowsRendered($scope, function () {
var allvisiblerows = $scope.gridApi.core.getVisibleRows($scope.gridApi.grid);
$scope.visibleRowsCount = allvisiblerows.length;
});
这样你也可以去掉$timeout.
如何获取"Showing Items"中实际存在的行? $scope.gridApi.core.getVisibleRows 似乎给出了不一致的值。
http://plnkr.co/edit/FRaCNxKhZ242rFyqNDkm?p=preview
gridApi.core.on.filterChanged($scope, function () {
$timeout(function () {
var allvisiblerows = $scope.gridApi.core.getVisibleRows($scope.gridApi.grid);
$scope.visibleRowsCount = allvisiblerows.length;
}, 0);
});
filterChanged
的问题是一旦过滤器发生变化就会引发它,但那时数据不一定已被过滤。要解决此问题,您可以监听 rowsRendered
事件而不是监听 filterChanged
事件,这将解决问题。
gridApi.core.on.rowsRendered($scope, function () {
var allvisiblerows = $scope.gridApi.core.getVisibleRows($scope.gridApi.grid);
$scope.visibleRowsCount = allvisiblerows.length;
});
这样你也可以去掉$timeout.