【发布时间】:2018-10-21 18:21:54
【问题描述】:
我正在尝试在select 上附加onSelectionChange 事件,如下所示:
<mat-form-field class="full-width languageDiv" appearance="outline" *ngIf="languages && selectedLanguage">
<mat-label>Language</mat-label>
<mat-select [(value)]="selectedLanguage">
<mat-option *ngFor="let language of languages" [value]="language" (onSelectionChange)="onLangChange($event)">
{{language}}
</mat-option>
</mat-select>
</mat-form-field>
这里是onLangChange 方法
onLangChange(e) {
console.log(e);
const languageSelected = e.source.value;
if( this.selectedLanguage !== languageSelected){
this.selectedLanguage = (languageSelected);
}
}
这里是stackblitz 链接:
StackBlitz
对于选择的每一次更改,onLangChange 都会被调用两次,这会扰乱我的其他逻辑(此处未提及以保持代码简单)。为什么这会被调用两次?
【问题讨论】:
标签: angular