0

我有一个带有 ng-infinite 滚动的角度应用程序。问题是:

  • 当我在页面中间时,会触发加载新内容的回调。当它被触发时,它会转移
  • 当元素添加到页面并且到达末尾时,即使添加了新内容,滚动也会保持在末尾(而新内容应该出现在旧元素之后,用户应该滚动才能看到它)
  • 当我单击链接并转到下一页时,缩放不会按原样重置

这是一个截屏视频:https ://imgur.com/KMaCLuQ

现在伙计们,这是代码的一部分(包含帖子列表的视图)

 <div infinite-scroll="loadMorePosts()" infinite-scroll-distance="0">


    <md-card ng-repeat="post in posts">
      <h5 ng-bind-html="post.title"></h5>
      <p ng-bind-html="post.body">
      </p>
    </md-card>
  <div layout="horizontal" layout-align="center">


    <md-progress-circular mode="indeterminate" ng-if="more"></md-progress-circular>

  </div>


</div>

如果您想要更多,请随时查看源代码

4

1 回答 1

1

我已经使用 ngInfiniteScroll 很长一段时间了,它对我来说很好用。

我很确定您的代码有问题。

确保使用某种锁定系统只调用一次更新函数。这是一个例子:

if ($scope.loaderBusy) {
  return;
}

$scope.loaderBusy = true;

User
.getList()
.then(function(response) {
  $scope.userList = response;
})
.finally(function() {
  $scope.loaderBusy = false;
});

该属性infinite-scroll-distance="0"也不是必需的。

于 2014-10-18T14:17:23.797 回答