У меня есть таблица, которая включает в себя несколько элементов мат-слайд-тумблера.Когда я изменяю любое их значение, я хочу сохранить, какое из них изменилось, и поэтому мне нужны атрибуты id и true или false каждого из них. Я нашел FormControl для управления событием, но у него нет свойства id внутри. Вот что я попробовал ниже
.HTML
<tr *ngFor="let not of notifications;let i = index"
[ngStyle]="{ 'background-color': (not.isFinished ? '#dddddd' : 'white') }">
<th scope="row">{{i + 1}}</th>
<td>{{not.task}}</td>
<td>
<section class="example-section">
<mat-slide-toggle
class="example-margin"
[id]="i"
[color]="color"
[checked]="not.isFinished"
[disabled]="not.isFinished"
(toggleChange)="onToggleChange($event)"
[formControl]="activate"
>
</mat-slide-toggle>
</section>
</td>
</tr>
.TS
activate = new FormControl();
onToggleChange() {
console.log(this.activate.value);
}
ОБНОВЛЕНИЕ Я решилдрузья проблемы. Спасибо за все ваши ответы, и я поделюсь своим решением здесь, чтобы помочь людям, которые сталкиваются с этой проблемой. Я нашел (change)="onChange($event)"
и переплет ID
.
HTML
<td>
<section class="example-section">
<mat-slide-toggle
[id]="i"
class="example-margin"
[color]="color"
[checked]="not.isFinished"
[disabled]="not.isFinished"
(change)="onChange($event)"
>
</mat-slide-toggle>
</section>
</td>
TScript
onChange(value: MatSlideToggleChange) {
console.log(value);
}