欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-09-08 13:19:07
说到ionic上拉加载就跟pc的分页是一样的,他需要在html数据列表的最下面边添加

说到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上拉加载的问题,希望对大家有所帮助