FormGroup 数组 Angular

Array of FormGroup Angular

我正在尝试在 Formgroup 中创建一个 FormGroup 数组,但我似乎无法让它工作

ngOnInit(): void {
    this.surveyForm = new FormGroup({
      'surveyTitle': new FormControl(null, Validators.required),
      'surveyDescription': new FormControl(null),
      'questionsDetail': new FormGroup(
        {
          'questionType' : new FormControl('mcq'),
          'question': new FormControl(null),
          'choices': new FormArray([])
        }),

    });

我希望将 questionsDetail 做成一个数组,这样我就可以在 1 个调查中有多个 questionsDetail。

我的问题是如何将我的 questionsDetails 初始化为 FromGroup 的数组,以便每次按下下一步按钮时,它都会将当前值推送到我的 questionDetails?

所以每次我提交表单时,它都在这个模型中

surveyForm = {
surveyTitle: string,
surveyDescription: string,
questionsDetails: [{
         questionType: string
         question: string
         choices: string[]
                  }]
}

您可以尝试为此使用 FormBuilder。这是一个如何使用 FormBuilder 创建数组的示例:

formExample: FormGroup;

constructor(private formBuilder: FormBuilder) {}

ngOnInit(): void {
      this.formExample = this.formBuilder.group({
            item1: new FormControl(),
            item2: new FormControl(),
            itemArray: this.formBuilder.array([
                this.formBuilder.group({
                    arrayItem1: new FormControl(),
                    arrayItem2: new FormControl()
              })])
        });
}