反应形式之间的循环关系

问题描述 投票:0回答:2

我有一个具有一些基本属性的人员表单,并且还有一个名为亲戚的节点

    let personFormGroup = this.fb.group({
        id: new FormControl(),
        gender: new FormControl(),
        ...        
        relatives: this.createRelatives(),
});

问题是Relatives是一个RelativePerson数组,它有一些独特的基本属性,并且里面还有一个Person

    let relativeFormGroup = this.fb.group({
            id: [null], // Initialize with default values or null
            relation_type: [''],
            ...
            Person: this.createPersonControl(),
            comments: ['']
        });

问题是我不能复制任何一个,因为这是不好的做法,即使我希望它们都有很多属性,所以我如何处理这样的循环关系,我可以创建一个人添加relativePeople

angular angular-reactive-forms
2个回答
0
投票

仅使用 id 来引用此人

let relativeFormGroup = this.fb.group({
  id: [null], // Initialize with default values or null
  relation_type: [''],
  ...
  personId: [null],
  comments: ['']
});`

编辑:

或者根据评论在

createRelatives
内创建一个空的FormArray。


0
投票

人员表单必须包含一个空的亲属数组,因此当您为亲属创建创建时,它将包含没有亲属的人员,并在后端使用补丁样式。

© www.soinside.com 2019 - 2024. All rights reserved.