您好,我想在我的 ngFor 中设置数组的第一个对象。这就是我到目前为止所拥有的
<div *ngFor="let media of allMedia; let first = first; let last = last"
[ngClass]="{ first: first, last: last }" >
<div *ngIf="media.type==='A'">SOME CODE</div>
<div *ngIf="media.type==='V'" class="header-unit **first**" >SOME CODE</div>
<div *ngIf="media.type==='B'">SOME CODE</div>
</div>
类型='v' 不首先显示。我做错了什么?
你忘记了ngClass中的单引号
[ngClass]="{'first': first, 'last': last }"
但是如果你想先显示media.type=="V"需要转换数组
this.allMedia.sort((a,b)=>a.type=='V' && b.type!='V'?-1:
a.type!='V' && b.type=='V'?1:0
)
将其包装在自己的*ngIf
指令中。尝试以下操作
<div *ngFor="let media of allMedia; let first=first; let last=last" [ngClass]="{ first: first, last: last }" >
<div *ngIf="media.type==='A'">SOME CODE</div>
<ng-container *ngIf="first">
<div *ngIf="media.type==='V'" class="header-unit" >SOME CODE</div>
</ng-container>
<div *ngIf="media.type==='B'">SOME CODE</div>
</div>