Как установить активный цвет петлевых мат-карт? - PullRequest
0 голосов
/ 26 мая 2020

У меня мат-карта зациклена. Как я могу установить активный цвет карточки, по которой я щелкнул?

<div>
  <ng-container *ngFor="let tenant of tenantData">
  <mat-card class="card-card" (click)="onCardClick(tenant.id)">
    <mat-card-header>
      <mat-card-title>{{tenant.tenantName}}</mat-card-title>
      <mat-card-subtitle>{{tenant.abbr}}</mat-card-subtitle>
    </mat-card-header>
    <mat-card-content>
      Tenant# {{tenant.id}}
    </mat-card-content>
  </mat-card>
</ng-container>
</div>

1 Ответ

0 голосов
/ 26 мая 2020

Создайте переменную activeTenantId в *component.ts и onclick добавьте текущий выбранный tenantId к этой переменной и добавьте динамику c class

Пример

<div>
  <ng-container *ngFor="let tenant of tenantData">
  <mat-card class="card-card" [class.active-tenant]="tenant.id === activeTenantId" (click)="onCardClick(tenant.id)">
    <mat-card-header>
      <mat-card-title>{{tenant.tenantName}}</mat-card-title>
      <mat-card-subtitle>{{tenant.abbr}}</mat-card-subtitle>
    </mat-card-header>
    <mat-card-content>
      Tenant# {{tenant.id}}
    </mat-card-content>
  </mat-card>
</ng-container>
</div>

onCardClick(id) {
 activeTenantId = id; // <=== put your trigger here
}
...