无限滚动离子框架wrok:Loadmore()调用多次

Infinite scroll ionic framewrok:Loadmore() called multiple times

本文关键字:调用 Loadmore 滚动 框架 wrok 无限      更新时间:2023-09-26

我正在使用ionic无限滚动从phpapi服务加载数据。

问题是在oninfinite属性(即loadmore函数)上定义的方法在到达底部时被调用多次。

这是我的代码

<div class="card" ng-repeat="result in results">
 <div>{{result.name}}</div>
</div>
<ion-infinite-scroll immediate-check="false" on-infinite="loadMore()" distance="10%" ng-if="!noMoreItemsAvailable"></ion-infinite-scroll>

这是我的控制器js

$scope.loadMore=function(){
        console.log("Load more item clicked");
   //get data from api service
   $http.get(url).then(function(msg){
       $scope.results=$scope.results.concat(msg.data)
     });
};

当控制台消息Load more item clicked到达底部时,我会多次得到它,有时它会变成无限次。有人知道为什么会发生这种事吗?

从服务获取数据并将其分配给scope后,调用$scope.$broadcast('scroll.infiniteScrollComplete');

在这种情况下,调用应该在$scope.results=$scope.results.concat(msg.data);之后。