Ответ 1
Изменено его change
на selectionChange
.
<mat-select (change)="doSomething($event)">
сейчас
<mat-select (selectionChange)="doSomething($event)">
В конструкции углового материала 6 метод (изменение) был удален. Я не могу найти, как заменить метод изменения для выполнения кода в компоненте, когда пользователь меняет выбор. Спасибо!
Изменено его change
на selectionChange
.
<mat-select (change)="doSomething($event)">
сейчас
<mat-select (selectionChange)="doSomething($event)">
Если вы используете реактивные формы, вы можете слушать изменения в элементе управления select так.
this.form.get('mySelectControl').valueChanges.subscribe(value => { ... do stuff ... })
Для меня (selectionChange)
и предложенный (onSelectionChange)
не сработали, и я не использую ReactiveForms
. В итоге я использовал событие (valueChange)
, например:
<mat-select (valueChange)="someFunction()">
И это сработало для меня
Для:
1) mat-select (selectionChange)="myFunction()"
работает под углом как:
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) Простой выбор HTML (change)="myFunction()"
работает под углом как:
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
}