Моим требованием было показать выбранное значение в поле ввода и получить выбранный идентификатор и значение в файл .ts. Поскольку мне нужны Id и Value, я привязываю значение параметра напрямую к [value]. Но если я это сделаю, он будет напечатан как [Object Object].
<mat-form-field appearance="outline" class="w-100">
<mat-label>Enter Hotel Name</mat-label>
<input type="text" aria-label="Number" matInput [formControl]="myControl" [matAutocomplete]="auto">
<mat-autocomplete #auto="matAutocomplete" (optionSelected)="selectedclient($event)">
<mat-option *ngFor="let option of clients; let i = index" [value]="option">
{{ option.name }}
</mat-option>
</mat-autocomplete>
<mat-icon matSuffix>location_on</mat-icon>
</mat-form-field>
Ts файл
options = [
{ id: 1, name: 'One'},
{ id: 2, name: 'Two'},
{ id: 3, name: 'Three'}
];
selectedclient(event) {
console.log(event.option.value);
}
URL-адрес редактора Stackblitz: https://stackblitz.com/edit/angular-mat-select-data-n4tvmj