В Angular Material Design 6 метод (изменение) был удален. Я не могу найти, как заменить метод изменения для выполнения кода в компоненте, когда пользователь меняет выбор. Спасибо!
129
Он изменил его с change
на selectionChange
.
<mat-select (change)="doSomething($event)">
сейчас
<mat-select (selectionChange)="doSomething($event)">
(changeEventChange)
событие, чтобы определять, когда изменяется событие изменения.selectionChange
материал material.angular.io/components/select/apiЕсли вы используете реактивные формы, вы можете отслеживать изменения в элементе управления следующим образом.
источник
.updateValueAndValidity
управление, не забудьте пройти{ emitEvent: false }
, чтобы избежатьRangeError: Maximum call stack size exceeded
. С другой стороны, спасибо за подсказку (+1), она привела меня к тому, что мне было нужно.Для:
1) mat-select
(selectionChange)="myFunction()"
работает в angular как:sample.component.html
sample.component.ts
2) Простой выбор html
(change)="myFunction()"
работает в angular как:sample.component.html
sample.component.ts
источник
Для меня
(selectionChange)
и предложенное(onSelectionChange)
не сработало, и я не используюReactiveForms
. В итоге я использовал(valueChange)
событие вроде:И это сработало для меня
источник
<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>
У меня сегодня проблема с mat-option-group. То, что решило мне проблему, используется в другом предоставленном событии mat-select: valueChange
Я поместил сюда небольшой код для понимания:
Версия коврика:
источник