1
<ul class="list-group">
  <li *ngFor="let t of todos; let i = index" class="list-group-item" >{{ t }}</li>
</ul>

t is a string. I want to have this element if i == 0:

<li class="list-group-item active" >{{ t }}</li>

and this element if i > 0:

<li class="list-group-item" >{{ t }}</li>
Lazar Ljubenović
  • 17,499
  • 8
  • 54
  • 86
ndsvw
  • 1,644
  • 1
  • 17
  • 33

3 Answers3

4

I like to use [class.####] notation for this sort of thing.

 <li *ngFor="let t of todos; let i = index" 
     class="list-group-item"
     [class.active]="i === 0">{{ t }}</li>

You can also use first.

 <li *ngFor="let t of todos; let i = first" 
     class="list-group-item"
     [class.active]="i">{{ t }}</li>
Reactgular
  • 48,266
  • 14
  • 138
  • 193
3

you can try this:

<li *ngFor="let t of todos; let i = index" class="list-group-item" [class.active]="i==0" >{{ t }}</li>
Surely
  • 1,599
  • 14
  • 22
2
<ul class="list-group">
    <li *ngFor="let t of todos; let i = index" class="list-group-item" >
        <span [class.active]="i==0"> {{ t }} </span>  
    </li>
</ul>
Aravind
  • 38,787
  • 15
  • 88
  • 108
  • Are you sure that this is the same? In your case, the li does not have the class "active". Could be a problem if a css code is written for li.active or sth... – ndsvw Aug 17 '17 at 16:55