J'ai un <mat select>
avec l’option multiple
(multi-sélection). Lorsque l'événement selectionChange
est déclenché, je dois savoir quelle option a été cochée ou décochée. Cependant, il ne renvoie que la nouvelle liste actuelle des options sélectionnées.
Par exemple, j'ai une liste:
<mat-select (selectionChange)="change($event)" multiple placeholder="Select">
<mat-option value="1">one</mat-option>
<mat-option value="2">two</mat-option>
<mat-option value="3">three</mat-option>
<mat-option value="4">four</mat-option>
</mat-select>
Si les options one
, three
et four
sont cochées, puis l'option non contrôlée par l'utilisateur four
, dans le gestionnaire d'événements, il me faut savoir quelle option a déclenché l'événement. (c.-à-d. l'option four
) et son nouvel état. Je ne vois actuellement pas de moyen d'accéder à cette information dans l'événement selectionChange
.
https://stackblitz.com/edit/angular-1e9gsd?file=app/select-overview-example.ts
J'ai essayé de mettre le gestionnaire d'événements (selectionChange)="change($event)"
sur le <mat-option>
mais cela ne semble pas être pris en charge.
J'avais besoin d'utiliser onSelectionChange
sur le <mat-option>
, qui est différent du selectionChange
que vous pouvez utiliser sur le <mat-select>
Ce serait bien si cela se trouvait dans la documentation de mat-select
.
Ici ça marche https://stackblitz.com/edit/angular-1e9gsd-34hrwg?file=app/select-overview-example.html