在表内的行上使用ng-repeat和ng-class

我正在使用AngularJS,我想要得到的效果会类似于这会产生什么,假设它会工作(它不)。

视图

<tr ng-repeat='person in people' ng-class='rowClass(person)'> <td>.....info about person...</td> <td>.....info about person...</td> <td>.....info about person...</td> </tr> 

调节器

 $scope.rowClass = function(person){ ...return some value based upon some property of person... } 

我意识到这段代码不会工作,因为person不可用于ng-class因为它只对每行内的对象可用。 该代码是要了解我正在尝试做什么:即。 我想能够有使用ng-repeat创build的表行,这些行的类也是基于一个条件,这个条件依赖于访问行本身的作用域特征,例如。 person 。 我意识到我可以在列上添加ng-class,但这很无聊。 任何人有更好的想法?

这应该实际上工作正常。 人们应该在tr元素和子元素上可用,因为他们共享相同的范围。

这似乎对我很好:

 <table> <tr ng-repeat="person in people" ng-class="rowClass(person)"> <td>{{ person.name }}</td> </tr> </table> 

http://jsfiddle.net/xEyJZ/

其实,你可以在你指的上下文中使用“人物”。 它存在于正在重复的项目以及其中的任何项目。 原因是特定元素上的任何指令都共享相同的$ scope对象。 ng-repeat的优先级是1000,所以它已经创build了它的$范围并且放入了“person”,所以“person”对ng类是可用的。

看到这个Plnkr:

http://plnkr.co/edit/ZI5Pv24U01S9dNoDulh6