1

语境

我试图FormGroup在两个组件之间使用相同的,但效果不佳,所以我试图找出我错在哪里。

我有 2 个带有用于编辑相同内容的表单的不同组件,我想在这些组件之间切换。这个想法是使用相同的表单组,在组件之间共享修改。

问题

父组件创建FormGroup,将其提供给组件 A,修改数据,FormGroup触摸 ,但是当我切换组件并将其传递给第二个组件 B时,FormGroup具有初始值,未触及。

我在父组件中检查了FormGroup已修改的值,并且它已被触摸。

我尝试了类似的调试方法:

<div *ngIf="isComponentB">
    <componentB [(form)]="formGroup" [formData]="formGroup.value"></componentB>
</div>

componentBngOnInit

  • 在 中,我可以从componentAformData中看到修改后的值
  • 在 中form.value,它是初始未触及的数据,并且表单被标记为未触及。

我真的不明白为什么我有这种行为......就像FormGroup没有更新,期望它是,因为它value已经改变了。

关于我缺少什么的任何线索?

事实上,我错过了数据在一个应该只初始化它的子表单中被重置。所以我将初始化移到了更高的级别。

4

0 回答 0