Ben*_*Ben 18 angular2-forms angular
任何想法为什么在运行以下代码时我得到控制valueChanges事件被'firstName'触发?
let form: FormGroup = this.createForm();
form.controls['firstName'].enable();
form.controls['firstName'].valueChanges(value=>{
//some code
});
Run Code Online (Sandbox Code Playgroud)
由于没有任何价值变化(只是状态),我不希望valueChanges在这里触发,只有statusChanged.
我错过了什么吗?
Ali*_*zad 17
基本上完整的表单映射到模型上,因此无论何时启用/禁用任何控件,表单模型的属性都会更改.而且因为模型正在改变所以valueChanges事件将被触发.我认为这是正常的.
小智 9
我有角版本6.0.3
this.form.get('inputName').setValue(newValue, {onlySelf: true, emitEvent: false});
Run Code Online (Sandbox Code Playgroud)
这对我有用。
不知道它为什么会如此运行,但是您可以发送emitEvent: false来启用/禁用而不触发valueChanges。
form.controls['firstName'].enable({ emitEvent: false });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10088 次 |
| 最近记录: |