【发布时间】:2020-11-15 12:40:02
【问题描述】:
我很惊讶地发现,与其他类型的 HTML 输入不同,在 Number 类型的输入中键入会在模糊时触发 valueChanges,以及单击微调器(侧面的小箭头)会触发两次valueChanges,这是预期的行为吗?我错过了什么吗?
组件:
export class AppComponent {
textControl = new FormControl();
numberControl = new FormControl();
ngOnInit(): void {
this.textControl.valueChanges.subscribe(console.log)
this.numberControl.valueChanges.subscribe(console.log)
}
}
模板:
<input type="text" [formControl]="numberControl">
<input type="number" [formControl]="textControl">
这是 Stackblitz demo
【问题讨论】:
-
也许我不明白你的意思,但是这个 stackblitz,有你的代码和 valueChanges 正在按预期记录更改/keydown stackblitz.com/edit/…
-
尝试在类型 number 的输入中按任意数字,然后在该输入之外单击,您会看到该值已被写入控制台两次
-
这不会发生在 @alou 的 stackblitz 中
-
@alou 看看我在回答中发布的演示
-
哦,真的发生了..
标签: angular angular-reactive-forms angular9