Я пытаюсь изменить стиль и увеличить количество избранных, проблема в том, что мой код меняет стиль для всех элементов сердца. Я пытался использовать индекс, например favClicked === i
, но затем, когда вы нажимаете на другое сердце, стиль отключается от предыдущего щелчка.
Мой код:
<td mat-cell *matCellDef="let item; let i = index" class="favorite">
<mat-icon
(click)="showRed = true; increment(showRed)"
*ngIf="!showRed"
>favorite</mat-icon
>
<mat-icon
(click)="showRed = false; increment(showRed)"
class="red"
*ngIf="showRed"
>favorite</mat-icon
>
</td>
...
increment(showRed: boolean) {
console.log(showRed);
if (showRed) {
this.childComponent.incrementCount();
} else {
this.childComponent.decrementCount();
}
}
Скриншот проблемы; Вы можете видеть, что он меняет стиль для всех сердец при щелчке верхнего сердца, который изначально был черного цвета и меняет цвет на красный при клике.