条件ng-repeat

时间:2013-01-11 16:23:20

标签: javascript angularjs underscore.js

在这样的例子中:

<div ng-repeat="i in ['1','2']" id="tab-{{i}}">
    <div ng-repeat="e in myCollection"> 
     </div>
</div>

在第二次ng-repeat的第一次迭代中,我想得到myCollection的第一个元素,在第二次迭代中,我想得到其余的集合:

那么为什么我不能这样做:

<div ng-repeat="i in ['1','2']" id="tab-{{i}}">
    <div ng-repeat="e in i == 1 ? _.first(myCollection) : _.rest(myCollection, 1)"> 
    </div>
</div>

underscore.js方法非常有用,但遗憾的是这个技巧不起作用。

那么我怎样才能在标记中做这样的事情而不涉及代码隐藏的javascript? 我知道,我知道这可能是不对的,不过我很好奇是否有可能......

1 个答案:

答案 0 :(得分:4)

Angular expressions看起来像javascript,但实际上是它的一个子集,并且不允许任何类型的控制流语句。要完成您想要做的事情,您需要在控制器中设置内部ng-repeat数组。