AngularJS:使用ng-repeat在第一个元素上应用CSS类

时间:2017-02-28 10:37:41

标签: angularjs loops angularjs-ng-repeat

我正在寻找通过我的ng-if条件的第一个索引,该索引并不总是$index === 0,并且无法使用$first解决。

这是我的代码示例:

<div class="ticket-event" ng-if="!item.hidden" ng-repeat="item in ctrl.event.items">   
   <div class="title item" ng-class="{'active': $index === $first}"></div>
</div>

我想在第一次出现item时添加一个类。

6 个答案:

答案 0 :(得分:4)

您无需检查ResumeLayout()是否为$index

$first

将其更改为:

<div class="title item" ng-class="{'active': $index === $first}">

答案 1 :(得分:2)

为什么不通过css这样做?

假设&#34; ticket -event&#34;是一个拼写错误,它应该是&#34; ticket-event&#34;,css很简单:

.ticket-event div:first-child { // css here }

答案 2 :(得分:2)

以下是您需要做的事情:

<div class="title item" ng-class='{active:$first}'></div>

答案 3 :(得分:0)

<tr ng-class="{evaluationRow : $index==0 && item.HighlightBorder==true }" ng-repeat="item in items" >     
                <td>{{item.LearnerId}} </td>
                <td>{{item.Name}}</td>

这对我有用。这里我只在条件成立时为ng-repeat中的第一个元素设置Css类,否则应用'否'Css类。

在上面的示例中,“evaluationRow”是要应用的Css类的名称,后跟条件。

答案 4 :(得分:0)

您可以使用INSERT INTO

对于$first中的第一个元素,它将评估为true

所以您的代码应该是

ng-repeat

答案 5 :(得分:-1)

这对我有用

<div class="title item" ng-class='{active:$first}'></div>