angular-關於分頁

列表渲染數據量龐大的時候,咱們須要用到一個filter來控制咱們的列表進行循環渲染。spa

這就要用到一個filter,limitTo。code

在此,我使用了變量來進行控制,能夠隨時調換每頁的數量,而且配合分頁按鈕,進行上一頁,下一頁等操做。blog

//分頁
        $scope.begin = 0;
        $scope.limit = 3
        $scope.limitNub = 3;
        window.listLength = 0;
        //獲取子控制器當中的跳轉頁數
        $scope.$on("change", function(event,data){
            $scope.gopages = data;
        });
        
        //首頁
        $scope.Home = function (){
            $scope.begin = 0;
        };
        //上一頁
        $scope.PgUp = function (){
            $scope.begin -= $scope.limitNub;
            if($scope.begin < 0){
                $scope.begin = 0;
            }
        };
        //下一頁
        $scope.PgDn = function (){
            $scope.begin += $scope.limitNub;
            if($scope.begin > listLength){
                $scope.begin = Math.floor(listLength/$scope.limitNub)*$scope.limitNub;
            }
        };
        //尾頁
        $scope.End = function (){
            $scope.begin = Math.floor(listLength/$scope.limitNub)*$scope.limitNub;
        };
        //去X頁
        $scope.goPage = function (){
            if($scope.gopages < (Math.floor(listLength/$scope.limitNub)+2)){
                $scope.begin = ($scope.gopages-1)*$scope.limitNub;
            }
        };
        
    }])

當中還使用了$emit和$on方法進行控制器之間的數據通信,使得去到某頁能夠具體實現。it

固然,此方法還有待改進,只是先如此使用。io

相關文章
相關標籤/搜索