JavaScript

超轻量级php框架startmvc

解决ionic和angular上拉加载的问题

更新时间:2020-05-28 09:24:02 作者:startmvc
说到ionic上拉加载就跟pc的分页是一样的,他需要在html数据列表的最下面边添加<ion-infinite

说到ionic上拉加载就跟pc的分页是一样的,他需要在html数据列表的最下面边添加


<ion-infinite-scroll ng-if="hasmore" on-infinite="loadMore()" distance="10%"> 
</ion-infinite-scroll> 

当列表为空 当ng-if为true的时候, 列表没有被填充满的时候 ,他就会自动加载loadMore();


<span style="font-size:18px;"> $scope.loadMore = function() { 
 Msdk.postJSON('/informNotice/queryNoticeInfo', { 
 pageIndex: $scope.newsList.pageIndex, 
 pageSize: $scope.newsList.pageSize, 
 informIds: $scope.newsList.informIds 
 }, 
 function(e) { 
 if(e.length != 0) { 
 //把每次请求到的数据都拼接起来 
 var a = $scope.notice; 
 $scope.notice = a.concat(e); 
 console.log($scope.notice); 
 //广播上个加载结束,有条件进行下个加载 
 $scope.$broadcast('scroll.infiniteScrollComplete'); $scope.newsList.pageIndex++;</span> 

<span style="font-size:18px;"> //如果请求到的数据小于pageSize,证明没数据可读</span> 

<span style="font-size:18px;"><span style="white-space:pre"> </span>//hasmore变为false,不会执行上拉加载 
 if(e.length < $scope.newsList.pageSize) { 
 $scope.hasmore = false; 
 } else {</span> 
[javascript] view plain copy
<span style="font-size:18px;"><span style="white-space:pre"> </span>//为true有条件进行下次上拉加载 
 $scope.hasmore = true; 
 } 
 } else { 
 $scope.hasmore = false; 
 $scope.$broadcast('scroll.infiniteScrollComplete'); 
 } 
 }) 
 }</span> 

总结

以上所述是小编给大家介绍的解决ionic和angular上拉加载的问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

ionic angularjs ionic angularjs上拉加载