angularjs與pagination插件可以完美實(shí)現(xiàn)前端的分頁(yè),篩選,搜索等功能,前提當(dāng)然需要有后臺(tái)開(kāi)發(fā)配合,今天我們只說(shuō)前端實(shí)現(xiàn):
1、引入pagination插件,在angularjs引入之前先加載pagination插件;
2、在定義controller的時(shí)候,需要注入pagination插件;
3、分頁(yè)前端原理基本需要有個(gè)默認(rèn)異步請(qǐng)求,當(dāng)點(diǎn)擊分頁(yè),再次請(qǐng)求數(shù)據(jù)并向后臺(tái)發(fā)送當(dāng)前頁(yè)碼,如果有搜索數(shù)據(jù)或者篩選數(shù)據(jù)功能,在發(fā)送請(qǐng)求的同時(shí)需要帶上與后臺(tái)開(kāi)發(fā)共同定義的搜索參數(shù);
4、廢話(huà)不多上,上代碼,基本模板:
var url = '請(qǐng)求路徑'; $http({ method:"post", url:url }).success(function(_data) { $scope.contentlist = _.data.items;//數(shù)據(jù)列表 $scope.pageparameters = _data.data; $scope.Searchparameters = { //定義你的搜索參數(shù) } // 初始化分頁(yè)數(shù)據(jù) var pagination; $scope.paginationInt = function($data) { pagination = $scope.pagination = Pagination.create({ itemsCount: $data.total_items, // 總數(shù) itemsPerPage: $data.epage, // 每頁(yè)條數(shù) currentPage: $data.page // 當(dāng)前頁(yè)碼 }); // 分頁(yè)操作 pagination.onChange = function(page) { $scope.page(page); }; }; $scope.paginationInt($scope.pageparameters); // 篩選過(guò)濾列表頁(yè)時(shí)傳遞的參數(shù) $scope.borrowSearch = function(type, val) { $scope.borrowData[type] = val; $scope.page(1);//每次搜索都從第一頁(yè)開(kāi)始 }; // 排序 $scope.SearchTab = {}; $scope.SearchStatus = true; $scope.current = { //你的參數(shù) }; // 頁(yè)碼跳轉(zhuǎn)操作 $scope.skipInput = function(page, endPage) { if (!isNaN(page)) { var page = parseInt(page, 20), endPage = parseInt(endPage, 20); if (page > endPage || page <= 0) { $scope.skipError = true; } else { $scope.skipError = false; } } else { $scope.skipError = true; } }; $scope.page = function(page) { $scope.Searchparameters.current_page = page;// 分頁(yè)方法 $http({ url:url, method:"post", params:$scope.Searchparameters }).success(function(data) { $scope.contentlist = data.items; }); }; });
HTML方法在此略過(guò),不明白的小伙伴可以私信!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注