Voici mon html qui contient l'autocomplétion du matériel.
<ng-container *ngSwitchCase="'autocomplete'">
<div [ngClass]="(filter.cssClass || 'col-md-4') + ' mt-2 pt-1'">
<div class="filter-key-label">
{{filter.columnTitle}}
</div>
<div class="filter-form-control d-flex flex-wrap justify-content-left">
<mat-form-field class="full-width">
<input type="text" matInput [formControl]="myControl" [matAutocomplete]="auto" ng-model="blah">
<mat-autocomplete #auto="matAutocomplete">
<mat-option *ngFor="let option of getOptionsTypeAhead(filter.key) | async" [value]="option" (onSelectionChange)="typeaheadChange($event, filter.key)">
{{ option }}
</mat-option>
</mat-autocomplete>
</mat-form-field>
</div>
</div>
</ng-container>
Actuellement, je suis en mesure de détecter seule la sélection change en utilisant onSelectionChange
mais il ne détecte pas si le champ est vide au départ ou si, après avoir sélectionné un élément et l'avoir supprimé, je ne sélectionne plus rien et que je déplace le focus hors du champ de saisie.
Comment le détecter ?
J'ai essayé onkeypress
, ng-change
couplé à ng-model
(je ne savais pas très bien comment l'utiliser) et change
mais rien n'a fonctionné. Y a-t-il une disposition déjà présente dans la bibliothèque ou devons-nous détecter le changement et saisir la valeur du champ ?