Dans Angular Material Design 6, la méthode (modification) a été supprimée. Je ne trouve pas comment remplacer la méthode de modification pour exécuter du code dans le composant lorsque l'utilisateur modifie la sélection. Merci!
Le changé de change
à selectionChange
.
<mat-select (change)="doSomething($event)">
est maintenant
<mat-select (selectionChange)="doSomething($event)">
Si vous utilisez des formulaires réactifs, vous pouvez écouter les modifications apportées au contrôle de sélection, comme cela est le cas.
this.form.get('mySelectControl').valueChanges.subscribe(value => { ... do stuff ... })
Pour moi, (selectionChange)
et le (onSelectionChange)
suggéré ne fonctionnent pas et je n'utilise pas ReactiveForms
. J'ai fini par utiliser l'événement (valueChange)
comme:
<mat-select (valueChange)="someFunction()">
Et cela a fonctionné pour moi
Pour:
1) mat-select (selectionChange)="myFunction()"
fonctionne dans angular comme:
sample.component.html
<mat-select placeholder="Select your option" [(ngModel)]="option" name="action"
(selectionChange)="onChange()">
<mat-option *ngFor="let option of actions" [value]="option">
{{option}}
</mat-option>
</mat-select>
sample.component.ts
actions=['A','B','C'];
onChange() {
//Do something
}
2) Simple HTML, sélectionnez (change)="myFunction()"
fonctionne dans angular comme:
sample.component.html
<select (change)="onChange()" [(ngModel)]="regObj.status">
<option>A</option>
<option>B</option>
<option>C</option>
</select>
sample.component.ts
onChange() {
//Do something
}