访问 FormGroup 的 FormArray 的数据

Accessing Data of a FormArray of FormGroup

所以我有这个 FormBuilder 设置:

surveyForm: FormGroup;
ngOnInit(): void {
     this.surveyForm = this.formBuilder.group({
       'surveyTitle': new FormControl(null),
       'surveyDescription': new FormControl(null),
       'questionsDetail': this.formBuilder.array([
         this.formBuilder.group({
           'questionType': new FormControl('mcq'),
           'question': new FormControl(null),
           'choices': this.formBuilder.array([])
         })
       ])
     });
    };

我尝试使用以下代码访问选项控件:

 onAddChoice()
  {
    const control = new FormControl(null, Validators.required);
    this.surveyForm.controls.questionsDetail.control.push(control);
  }

我收到这个错误

quote Property 'control' does not exist on type 'AbstractControl'.

如果有人能帮助我,那就太好了。

提前致谢。

应该是controls不是control

this.surveyForm.controls.questionsDetail.controls.push(control);

我建议你使用 formArray 控件的 addControl 方法,它更冗长。

(this.surveyForm.get('questionsDetail') as FormArray).addControl(control);