Angular,在拥有现有ngClass的情况下,将唯一的类添加到ngFor循环中



我有一个ngFor循环,我想为每个元素分配一个唯一的类,但我已经有了一个ngClass条件。

<div class="b-game-card" *ngFor="let info of list" [ngClass]="{active: isActive(info)}">
<div class="b-game-card__cover"></div>
</div>

我尝试添加[ngClass]="{active: isActive(info), info.name}"但它对我不起作用。

info.name是要应用的类吗?如果是这样,请将其移到您的类属性:
<div 
class="b-game-card {{ info.name }}" 
*ngFor="let info of list" 
[ngClass]="{active: isActive(info)}">
<div class="b-game-card__cover"></div>
</div>

如果使用ngClass,则应提供类名(字符串类型(

在您的情况下,在您的.component.css 中

.activeClassName {
active: true; //or whatever you want
}

在您的.component.html中(如果isActive(info(是正确的方法(

<div class="b-game-card" *ngFor="let info of list" [ngClass]="isActive(info) ? 'activeClassName' : ''">
<div class="b-game-card__cover"></div>
</div>

通过这种方式,您可以正确地提供字符串

最新更新