小编use*_*185的帖子

angular ui grid gridApi.infiniteScroll.on.needLoadMoreData在数据中更改时不起作用

我正在使用角度ui-grid 3.2.5

以下是gridoptions

$scope.gridOptions = {
    infiniteScrollRowsFromEnd: 40,
    infiniteScrollUp: true,
    infiniteScrollDown: true,
    enableColumnMenus: false, // Remove hide columns options
    columnDefs: $scope.myDefs,
    data: 'data',
    onRegisterApi: function (gridApi) {
        gridApi.infiniteScroll.on.needLoadMoreData($scope, $scope.getDataDown);
        gridApi.infiniteScroll.on.needLoadMoreDataTop($scope, $scope.getDataUp);
        $scope.gridApi = gridApi;
    }
};

function updateGrid(filteredData) {
    $scope.response = filteredData;

    $scope.firstPage = 1;
    $scope.lastPage = 1;
    $scope.totalPages = Math.ceil($scope.response.length / $scope.pageSize);

    $scope.gridApi.infiniteScroll.setScrollDirections(false, false);
    $scope.data = [];
    $scope.data = $scope.response.slice(0, $scope.pageSize);

    $timeout(function () {
        $scope.gridApi.infiniteScroll.resetScroll($scope.firstPage > 0, $scope.lastPage < $scope.totalPages);
    });
};
Run Code Online (Sandbox Code Playgroud)

当我们正在执行滚动gridApi.infiniteScroll.on.needLoadMoreData($scope, $scope.getDataDown);工作时,但是当数据在网格中更改时我们正在推送新数据$scope.$watch( 'data', updateGrid); …

javascript angularjs angular-ui-grid ui-grid angular

16
推荐指数
1
解决办法
844
查看次数