Dans Angular Material Design 6, la méthode (change) a été supprimée. Je ne trouve pas comment remplacer la méthode de changement pour exécuter du code dans le composant lorsque l'utilisateur change la sélection Merci!
129
Le changé de change
à selectionChange
.
<mat-select (change)="doSomething($event)">
est maintenant
<mat-select (selectionChange)="doSomething($event)">
(changeEventChange)
événement pour détecter quand l'événement de modification change.selectionChange
material.angular.io/components/select/apiSi vous utilisez des formulaires réactifs, vous pouvez écouter les modifications apportées au contrôle de sélection comme suit.
la source
.updateValueAndValidity
la commande n'oubliez pas de passer{ emitEvent: false }
pour éviterRangeError: Maximum call stack size exceeded
. Par contre merci pour l'indice (+1), cela m'a conduit à ce dont j'avais besoin.Pour:
1) mat-select
(selectionChange)="myFunction()"
fonctionne en angulaire comme:sample.component.html
sample.component.ts
2) La sélection html simple
(change)="myFunction()"
fonctionne en angulaire comme:sample.component.html
sample.component.ts
la source
Pour moi
(selectionChange)
et le suggéré(onSelectionChange)
n'a pas fonctionné et je ne l'utilise pasReactiveForms
. Ce que j'ai fini par faire, c'était d'utiliser l'(valueChange)
événement comme:Et cela a fonctionné pour moi
la source
<mat-select placeholder="Select an option" [(ngModel)]="project.managerId" name="managerId" required (selectionChange)="fillComanager(project.managerId)"> <mat-option *ngFor="let manager of managers" [value]="manager.id"> {{ manager.name }} </mat-option> </mat-select>
J'ai ce problème aujourd'hui avec mat-option-group. La chose qui m'a résolu le problème est d'utiliser dans un autre événement fourni de mat-select: valueChange
J'ai mis ici un petit code pour comprendre:
Version du tapis:
la source