我想传递变量 $index 像过滤器的参数。代码如下:
HTML:
<div ng-app='myApp' ng-controller="Main" >
<div ng-repeat="i in (filtered = (elements | myFilter: $index))" >
<ul>
<il ng-repeat="i in filtered">{{i.T}}</il>
</ul>
</div>
</div>
JS:
var myApp = angular.module('myApp', [])
.filter("myFilter", function(){
return function(input, index){
var newArray = [];
for(var x = 0; x < input.length; x+=2){
newArray.push(input[index]);
}
return newArray;
}
});
function Main($scope){
$scope.elements = [
{ T: 't1', V: "v1"},
{ T: 't2', V: "v2"},
{ T: 't3', V: "v3"},
{ T: 't4', V: "v4"},
{ T: 't5', V: "v5"}
];
}
我已经证明,如果我传递了一个类似参数的数字,它就可以工作。但是当我传递变量 $index 时,代码不起作用。
有没有像过滤器中的参数一样传递变量 $index 或 ng-repeat 的索引?
问候。
编辑:
真的,我想展示这样的东西:
... t1t2 t3t4 t5 ... 或在 HTML 中:
...
<div>
<ul>
<il>t1</il>
<il>t2</il>
</ul>
</div>
<div>
<ul>
<il>t3</il>
<il>t4</il>
</ul>
</div>
<div>
<ul>
<il>t5</il>
</ul>
</div>