Sé que [value] almacena el Objeto seleccionado (Oferta en mi caso). Según la documentación de materiales, optionSelected emite un evento. [optionSelected] = "fooFn" pero no existe. Solo quiero acceder al objeto Oferta. ¡Gracias!
oferta-búsqueda.componente.html:
<h5 #offerP>option - autoComplete</h5> <mat-form-field id="form-field"> <input type="text" matInput [formControl]="myControl" [matAutocomplete]="auto"> <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn"> <mat-option *ngFor="let option of filteredOptions$ | async" [value]="option"> {{ option.foodItem.name }} </mat-option> </mat-autocomplete> </mat-form-field>Puedes usarlo como:
<mat-autocomplete #auto="matAutocomplete" (optionSelected)='getPosts($event.option.value)'>Se puede hacer de dos formas
onSelectionChange que emite MatOptionSelectionChange desde mat-option <mat-autocomplete #auto="matAutocomplete"> <mat-option *ngFor="let option of options" [value]="option" (onSelectionChange)="updateMySelection($event)" > {{ option }} </mat-option> </mat-autocomplete>optionSelected que emite MatAutocompleteSelectedEvent desde mat-autocomplete <mat-autocomplete #auto="matAutocomplete" (optionSelected)="updateMySelection($event)"> <mat-option *ngFor="let option of options" [value]="option" > {{ option }} </mat-option> </mat-autocomplete> <mat-form-field floatLabel="always"> <mat-label>UTBMS Activity Codes</mat-label> <input type="text" placeholder="Activity Codes" [(ngModel)]="activityCode" aria-label="Number" matInput [formControl]="utbmsActivityCodesControl" [matAutocomplete]="autoActivityCodes"> <mat-autocomplete autoActiveFirstOption #autoActivityCodes="matAutocomplete"> <mat-option *ngFor="let option of utbmsActivityCodes | async" (onSelectionChange)="setBillingActivity(option)" [value]="option.code"> {{option.name}} </mat-option> </mat-autocomplete> </mat-form-field> setBillingActivity(object){ this.actionData.libraryContent.billingActivityId=object.activityId; }