2017-02-28 32 views
2

我正在尋找通過ng-if條件的第一個索引,它並不總是$index === 0,並且無法使用$first解決。AngularJS:使用ng-repeat在第一個元素上應用CSS類

這裏是我的代碼示例:

<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第一次出現添加類。

回答

2

爲什麼不通過CSS來做到這一點?

假設「票-event」是一個拼寫錯誤,它應該是「門票事件」的CSS很簡單:

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

以下是你需要做的:

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

您不必檢查$index$first

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

變化它:

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

但是,當通過第二行的項目索引不是從0開始,讓我們說5,$第一個指令不起作用 –

-1

這爲我工作

<div class="title item" ng-class='{active:$first}'></div> 
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類的名稱,後跟一個條件。

相關問題