我目前使用过滤器将 ng-repeat 限制为 5,但我想知道如何对数据进行分页。
<div ng-repeat="job in jobs | limitTo:5">
我有数量不定的重复项目,我希望用户能够以合理的块查看这些项目——一次五个,并使用下一个/上一个按钮或页码来跳过。是否有一个非常适合这项任务的角度指令?使用猫鼬查询从后端发送可管理的数据块会更简单吗?
是的,有一个很好的指令AngularJS
called dirPagination
。您可以分页tables
以及几乎您需要的一切。
看看它Github https://github.com/michaelbromley/angularUtils/tree/master/src/directives/pagination如果你想看演示,Plunker http://plnkr.co/edit/Wtkv71LIqUR4OhzhgpqL?p=preview.
下载后Javascript
和模板Html
文件,您需要执行一些基本步骤:
-
In your Javascript
文件,放置:
$scope.currentPage = 1;
// 应该开始分页的页面。
$scope.pageSize = 5;
// 每页的项目限制。
-
改变你的div:
<div ng-repeat="job in jobs | limitTo:5">
to <div dir-paginate="job in jobs | filter:q | itemsPerPage: pageSize" current-page="currentPage"></div>
-
在 html 文件中添加分页控件(确保为模板设置正确的 url)。
<dir-pagination-controls boundary-links="true" on-page-change="pageChangeHandler(newPageNumber)" template-url="dirPagination.tpl.html"></dir-pagination-controls>
UPDATE
我制造了一个plnkr http://plnkr.co/edit/6GqArUZnifcFWEG2SIgT?p=preview演示它在您的案例中的外观。请看一下。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)