我想将输入的每个值格式化为 FormControl 在我的页面上使用 parseFloat ,由于第三方插件的要求,所以我制作了如下内容:
FormControl
parseFloat
this.form.get('latitude').valueChanges.subscribe(e => { this.form.patchValue({latitude: parseFloat(e)}); });
显然这不起作用,它创建了一个无限循环。
我怎么能做这样的事情,但没有循环?
patchValue 接受包含选项的次要参数,包括 emitEvent 选择。
emitEvent
你可以用
this.form.get('latitude').valueChanges.subscribe(e => { this.form.patchValue({latitude: parseFloat(e)}, {emitEvent: false}); });
你将避免无限循环 patchValue 方法不会触发另一个 valueChanges .
patchValue
valueChanges