6

我正在使用 ngInfiniteScroll 在我的网站上启用无限滚动。它部分按预期工作,一旦我滚动到页面底部,它就会调用我希望它调用的方法来显示更多帖子,除了它在触发一次后会不停地调用帖子。有人知道是什么原因造成的吗?这就是我实现 ngInfiniteScroll 的代码的样子,但我不知道这个特定的代码会有多大帮助。我怀疑它被另一个文件中的代码抛弃了。

<div style="height: 1px">
<post post-item="item" feed-items="items.feed" feed-name="feedName" ng-repeat="item in items.feed"> </post>
<div ng-if="items.feed.length == 0 && !initialLoad">
<div class="empty-message">Your feed is currently empty, visit the <a href="/#/users">Users</a> page     and find some more people to follow!</div>
</div>
<a infinite-scroll="nextPosts()" infinite-scroll-distance="1" href ng-click="nextPosts()"   class="show-more">Show more </a> 
</div>
4

1 回答 1

13

示例如果调用已在进行
中, 您可以使用infinite-scroll-disabledof 指令告诉它不加载数据。ngInfiniteScroll

例如

<div infinite-scroll='loadMore()' infinite-scroll-disabled='busyLoadingData' infinite-scroll-distance='1'>
  <p ng-repeat='item in items'>Some data</p>
</div>

JS:

$scope.busyLoadingData = false;

$scope.loadMore = function () {
  if ($scope.busyLoadingData) return;
  $scope.busyLoadingData = true;

  // $http call to get next set of data
  // on the .success() callback do $scope.busyLoadingData = false;
}
于 2014-11-20T21:08:57.783 回答