角度限制过滤第二个参数"开始"似乎在Angular 1.3中不起作用

时间:2015-03-26 15:11:36

标签: javascript angularjs angularjs-filter

我试图在一组用户上进行分页功能。使用Angularjs 1.3。

ng-repeat="user in users | filter: searchText | orderBy: 'lastName' | limitTo:pageSize:startPosition track by user.lanId"

我想使用"开始"参数,上面的startPosition变量,用于我的用户列表的每个页面的开头。当这不起作用时,我将任务简化为仅限于一组数字。

$scope.numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];

ng-repeat="n in numbers | limitTo:2:2"

那也没用。这给了我1和2而不是3和4。

然后我切换到Angularjs 1.4-beta.6,它按预期的方式工作。

我的问题:有没有办法让它在Angular 1.3中运行?在Angular 1.3中造成这种情况的原因是什么?

我尝试使用1.3.15和1.3.2 - 两者都不起作用。

感谢。

2 个答案:

答案 0 :(得分:12)

根据文档,版本1.3.x中未实现begin参数。请参阅this(1.3.15)和this(1.4.0)

答案 1 :(得分:7)

您始终可以将自己的limitTo版本编写为自定义过滤器。

angular.module('myApp', []).filter('myLimitTo', function() {
  return function(input, limit, begin) {
    return input.slice(begin, begin + limit);
  };
});