Angular limitTo второй параметр фильтра "begin", похоже, не работает в Angular 1.3
Я пытаюсь сделать функцию разбивки на страницы для множества пользователей. Использование Angularjs 1.3.
ng-repeat="user in users | filter: searchText | orderBy: 'lastName' | limitTo:pageSize:startPosition track by user.lanId"
Я хочу использовать параметр "begin", переменную 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 ответа
Решение
Вы всегда можете написать свою собственную версию limitTo в качестве пользовательского фильтра.
angular.module('myApp', []).filter('myLimitTo', function() {
return function(input, limit, begin) {
return input.slice(begin, begin + limit);
};
});