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