angularjs中$ filter('limitTo')的问题

时间:2016-02-15 08:33:41

标签: angularjs angular-filters

通过javascript

使用limitTo过滤器时遇到问题

angularjs docs for limitTo表示过滤器的使用方式如下:

$filter('limitTo')(input, limit, begin)

请注意,begin参数是可选的。

根据上述内容,我做了以下几点:

var myApp = angular.module('myApp',[]);

function MyCtrl($scope,$filter) {
   $scope.numbers =[1,2,4,1,8,11,345,123,908,223,4646,132,24,43,3,76,432,1];
   $filter('limitTo')($scope.numbers, 3);   
}

<div ng-controller="MyCtrl">
 {{numbers}}
</div>

我希望我的输出是

[1,2,4]

但整个数组显示的意思是limitTo过滤器不起作用。

我做错了什么?

Link to jsfiddle

1 个答案:

答案 0 :(得分:3)

Angular的$filter不会修改原始数组,所以你必须这样做:

$scope.filteredArray = $filter('limitTo')($scope.numbers, 3);