Ich habe ein <mat select>
mit der Option multiple
(Mehrfachauswahl). Wenn das Ereignis selectionChange
ausgelöst wird, muss ich wissen, welche Option aktiviert oder deaktiviert wurde. Es wird jedoch nur die neue aktuelle Liste der ausgewählten Optionen zurückgegeben.
Zum Beispiel habe ich eine 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>
Wenn die Optionen one
, three
und four
aktiviert sind und der Benutzer die Option four
deaktiviert hat, muss ich im Ereignishandler wissen, welche Option das Ereignis ausgelöst hat (dh Option four
) und dessen neuer Status. Ich sehe derzeit keine Möglichkeit, im Ereignis selectionChange
auf diese Informationen zuzugreifen.
https://stackblitz.com/edit/angular-1e9gsd?file=app/select-overview-example.ts
Ich habe versucht, den Event-Handler (selectionChange)="change($event)"
auf der <mat-option>
aber es scheint nicht unterstützt zu werden.
Ich musste onSelectionChange
für <mat-option>
Verwenden, was sich von dem selectionChange
unterscheidet, das Sie für <mat-select>
Verwenden können.
Es wäre schön, wenn das in der Dokumentation für mat-select
Steht.
Hier funktioniert es https://stackblitz.com/edit/angular-1e9gsd-34hrwg?file=app/select-overview-example.html