Я бы посоветовал вам сохранить index
в isClassVisible
и переименовать его в что-то вроде visibleClassIndex
и проверить в [ngClass]
, видим ли текущий класс, проверив текущий index
с помощью visibleClassIndex
, поскольку будет 0
индекс, который является false
значением, я бы посоветовал вам определить visibleClassIndex
тип как null | number
или undefined | number
и сделать проверку таким образом visibleClassIndex !== null && visibleClassIndex === i
или visibleClassIndex !== undefined && visibleClassIndex === i
, если вы выберете null
убедитесь, что в качестве значения по умолчанию visibleClassIndex: null | number = null;
назначено null
, я бы предложил использовать undefined
, потому что с ним вам не нужно определять тип по умолчанию, так как он автоматически будет undefined
<div class="chip-idiomas">
<mat-chip-list multiple [selectable]="true">
<mat-chip *ngFor="let idioma of idiomas"
class="chip"
[ngClass]="{'chip-selecionado' : visibleClassIndex !== undefined && visibleClassIndex === i}"
[selected]="idioma"
(click)="visibleClassIndex = i;changeSelected('s', idioma)">
{{ idioma.nome }}
</mat-chip>
</mat-chip-list>
</div>