ng-class-even
& ng-class-odd
将着眼于当前ng-repeat
$索引对象,并决定其价值应给予类属性。
ng-class-even
/ng-class-odd
取一个表达&评价的结果可以是代表空间分隔类名或数组的字符串 。
更改标记像下面HTML
标记
<table>
<tr ng-repeat-start="item in data.group" ng-init="$index%2==0?(color='blue'): (color='red')">
<td>{{item.name}}</td>
<tr ng-repeat-end ng-repeat="inner in item.innerdata" ng-class="color">
<td>{{inner.innername}}</td>
</tr>
</tr>
</table>
Fiddle
更新1
更好的解决办法被直接使用ng-class
到内纳克重复
<table>
<tr ng-repeat-start="item in data.group">
<td>{{item.name}}</td>
<tr ng-repeat-end ng-repeat="inner in item.innerdata" ng-class="$parent.$index%2 == 0? 'red': 'blue'">
<td>{{inner.innername}}</td>
</tr>
</tr>
</table>
Updated 1
更新2
更准确的解决方案将是使用$even
或$parent
<table>
<tr ng-repeat-start="item in data.group">
<td>{{item.name}}</td>
<tr ng-repeat-end ng-repeat="inner in item.innerdata" ng-class="$parent.$even? 'red': 'blue'">
<td>{{inner.innername}}</td>
</tr>
</tr>
</table>
$odd
对象
Update 2
@JsIsAwesome我认为你误解了代码在做什么。在'ng-class-even'中,它将一个名为'color'的变量设置为'red'的值。也许我没有把我的变量说得很好。我试图在'ng-class'中使用'color'的变量,但它只能由最后一个重复项设置。 – Chad 2015-03-30 19:53:54