了解Angular2更改事件 [英] Understanding Angular2 change event

查看:116
本文介绍了了解Angular2更改事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Angular2的新手,正在研究示例以学习概念

I am new to Angular2 , and working on sample to learn the concepts

下面是我的部分示例代码

Below is my partial sample code ,

...
....
<select name="mExp" [(ngModel)]="model.exp"    (change)="expChange($event.target.value)">
 <option *ngFor="let exp of modelExps" [value]="exp.Name">{{exp.Value}}   </option>
</select>
...
...

....
....
expChange(newExp: string) {
  this.model.exp = newExp;
  console.log(this.model);
}
...
....

简而言之,当用户在下拉菜单中选择一个选项时,选定的值被分配给"this.model.exp",如果我需要取消分配该怎么办基于"newExp"的某个值.

In brief , when user selects an option in the dropdown , the selected value is assigned to "this.model.exp" , what if i need to cancel the assignment based on a certain value for "newExp".

推荐答案

您可以拆分绑定

<select name="mExp" [ngModel]="model.exp" (ngModelChange)="$event === 3 ? expChange($event) : null">

使用 ngModelChange 通常更好,因为 change (< select> 本机事件)和 ngModelChange 会与 ngModel 一起使用时引起问题.

Using ngModelChange is usually better because there are timing differences when change (<select> native event) and ngModelChange are emitted which can cause issues when used together with ngModel.

这篇关于了解Angular2更改事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆