连接多个ng级条件

时间:2014-11-20 15:14:56

标签: javascript css angularjs

我使用<td>使用ng-class进行现有条件检查。

使用AngularJS的HTML

<td ng-repeat="cell in row.cells" ng-class="{selected: cell.isSelected, winner: cell.isWinner}" ng-click="updateCell(cell)">
    {{cell.word}}
</td>

我尝试将CS​​S类应用于特定的<td>,并发现我可以使用<td>指令中的ng-class索引执行此操作:

ng-class="{'myClassName':$index==12}"

我在将其添加到现有ng-class时遇到问题。如果我尝试将其添加到指令的末尾,并使用逗号分隔,cell.isSelectedcell.isWinner条件将停止工作,myClassName也不会被应用。例如:

ng-class="{selected: cell.isSelected, winner: cell.isWinner, 'myClassName':$index==12}"

selected: cell.isSelectedwinner: cell.isWinner特定于任何<td>单元格。 myClassName':$index==12应该仅针对第13个<td>单元格。

我应该使用单独的ng-class指令(它确实有效)吗?

2 个答案:

答案 0 :(得分:2)

ng-class指令接受(以及其他格式)表达式求值对象(键是一个类,值决定是否应用该类)。如果要添加另一个类,只需向对象添加另一个键(用逗号分隔,而不是用分号分隔):

<td ng-class="{selected: cell.isSelected, winner: cell.isWinner, myClassName: ($index == 12) }">...</td>

答案 1 :(得分:1)

如果我正确理解你的意思,你可以尝试:

ng-class="{selected: $index==12 && cell.isSelected, winner: $index==12 && cell.isWinner}"