Используйте событие изменения для ведения собственного списка выбранного элемента.
<div class="members-container">
<mat-card *ngFor="let member of mydata" class="member-card">
<div class="card-checkbox">
<mat-checkbox (value)="member.name" (change)="checked(option, $event)">
<h4>{{ member.name }}</h4>
</mat-checkbox>
</div>
</mat-card>
</div>
TS / JS
selectedValues = [];
function checked(option, $event) {
if($event.checked) {
selectedValues.push(option.value);
//.. unselect etc to be implemented....
}
}
Но: Выбранное поле ИМХО является более чистым подходом, и я не стал бы беспокоиться о стоимости этих микросекунд для отображения.
Лучший подход: отделить GUI-данные от API-Data
Вы можете создать новый список параметров, основанный на входных данных из вашего API, только со свойствами, необходимыми для отображения, а также выбранного поля. При таком подходе вы будете отделять данные от вашего графического интерфейса и сможете использовать выбранное поле.
Получить список ваших данных для графического интерфейса
TS / JS
myDataForGui = mydata.map(m => {name: m.name, selected: false });
HTML
<div class="members-container">
<mat-card *ngFor="let member of myDataForGui" class="member-card">
<div class="card-checkbox">
<mat-checkbox (checked)="member.selected">
<h4>{{ member.name }}</h4>
</mat-checkbox>
</div>
</mat-card>
</div>