如何使用AngularJS对结果进行分页,然后在完整列表中进行过滤?

时间:2014-03-09 00:18:15

标签: angularjs pagination angular-ui-bootstrap angularjs-filter

来自How to do paging in AngularJS?的示例和链接都显示分页系统,其中过滤/排序仅适用于当前页面。

例如,sorting by id on the 1st page of this fiddle将切换:

  • 之间:1, 10, 11, 12, 13;
  • 和此:13, 12, 11, 10, 1

虽然有人可能希望得到:

  • 1, 2, 3, 4, 5(因为这些值出现在后续页面中)。

问题

某人如何过滤/订购然后分页而不是分页,然后过滤列表?

1 个答案:

答案 0 :(得分:2)

1)停止对分页结果进行排序

在:

<tr ng-repeat="item in pagedItems[currentPage] | orderBy:sortingOrder:reverse">

后:

<tr ng-repeat="item in pagedItems[currentPage]">

2)注入$filter并对整个集合进行排序

$filter('orderBy')($scope.items, $scope.sortingOrder, $scope.reverse);
你小提琴的

... Here is a modified fork