ng-grid无限滚动 - ngGridEventScroll发出两次

时间:2014-05-27 06:34:02

标签: javascript angularjs ng-grid

我尝试基于ngGridEventScroll事件实现无限滚动网格。但是每当我滚动到网格底部时,我都会发出两次。 这是我的更新数据代码($ scope.mydata用作网格的源代码):

$scope.$on('ngGridEventScroll', function () {
    chunkStart += chunkSize;
    $http.get('/api/mydata/' + chunkStart + '/' + chunkSize)
          .success(function(mydata) {
                $scope.mydata = $scope.mydata.concat(mydata);
           });
});

我的错误在哪里,你能给我任何建议吗?

1 个答案:

答案 0 :(得分:3)

我有类似的问题,这是我的解决方案:

$scope.load = true;
$scope.$on('ngGridEventScroll', function() {
  if ($scope.load) {
    $scope.load = false;
    $http.get('your/url/here')
            .success(function(data) {
              //operations here
              $timeout(function() {
                //or here
                $scope.load = true;
              });
            });
  }
});

我使用$scope.load标志来指示何时加载数据和角度$timeout()功能修复与时间相关的问题。