我有一个 formbuilder 组,正在监听 valueChanges 的变化并触发保存功能,然后触发表单上的刷新功能:
this.ticketForm.valueChanges.debounceTime(1000).distinctUntilChanged()
.subscribe(data => {
this.saveTicket();
this.refreshTicket();
})
然后我重新加载表单并使用 patchValue 将数据重新分配到表单字段(以及页面上的其他地方,特别是更改日志),例如:
this.ticketForm.patchValue(ticket, { emitEvent: false });
然而,这会导致无限循环保存表单,尽管 emitEvent : false。
这是 Angular 4/Ionic 3 的错误还是我的误解?
最佳答案
尝试以这种方式添加 onlySelf: true
和 emitEvent: false
:
this.ticketForm.patchValue(ticket, {emitEvent: false, onlySelf: true});
关于angular - 带有 { emitEvent : false } triggers valueChanges on Angular 4 formgroup 的补丁值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45241103/