1

在这样的例子中:

<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的情况下在标记中做这样的事情呢?我知道,我知道这可能不是正确的做法,但我很好奇这是否可能......

4

1 回答 1

4

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

于 2013-01-11T16:29:53.870 回答