在我的情况下,如何检测数组的索引

How to detect the index of an array in my case?

本文关键字:检测 数组 索引 情况下 我的 何检测      更新时间:2023-09-26

我正在尝试使用ng-repeat来显示数组。

我有类似的东西

<div ng-repeat="stu in school">
    <div>{{stu.name}}</div>
    <div>{{stu.grade}}</div>
</div>

.JS

$scope.school = [
    {name:'test'
     grade:'a'},
    {name:'test2'.
     grade:'b'},
    {name:'test3',
     grade:'c'}
]

无论如何,我可以通过索引检测学生吗?我只得到了namegrade,我想区分它们。例如,我想在testgrade a学生上添加类"first",在test2grade b学生上添加类"second"。

感谢您的帮助!

是的,这是可能的。您可以访问项的索引,还可以基于可用项的特定属性组合生成类。

<ul>
    <li ng-repeat="result in testScores">
          <span class="{{$index}} {{result.name}}-{{result.grade}}">{{result.name}} : {{result.name}}</span>
    </li>
</ul>

这是一个工作 JSFiddle - http://jsfiddle.net/mattezell/douku110/3/

在相关的说明中,TIL:如何让AngularJS JSFiddle演示工作...

您可以使用带有条件的ng-class,例如,如果您需要为姓名为test&&年级a的学生添加class first,则可以使用

ng-class="{ 'first': (stu.name=='test' && stu.grade=='a')}

这是您的示例的 Plunker 演示

请注意,您的数组应该像

 $scope.school = [
    {name:'test', grade:'a'},
    {name:'test2',grade:'b'},
    {name:'test3', grade:'c'}
]