Я использую MatSelect с опцией множественного выбора. При проверке или снятии отметки с каждого элемента есть функция машинописного текста, которая будет вызываться каждый раз, поэтому проблема в том, что я не могу отличить, какое событие щелчка заполняется из пользовательского интерфейса, например. Apple проверила, затем вызвала API, и если Apple не проверила, ничего не делайте
.html файл
<mat-form-field>
<mat-select [(value)]="selected" formControlName="tagList" id="tagList" placeholder="Select Tag" name="tagList" multiple>
<mat-option *ngFor="let tag of tagList" [value]="tag"
(click)="isSelectedTagIsCallback(tag, $event.value)">
{{tag.name}}
</mat-option>
</mat-select>
</mat-form-field>
.ts-файл
isSelectedTagIsCallback(data, event) {
if(checked){
// Call API
}
else{
// Do nothing
}
}
Является ли вышеуказанный подход неправильным или правильным? Если правильно, то как мне получить это событие Checked/Unchecked или флаг для вызова API на основе значения