如何不使用formGroup来控制formArray?

时间:2019-10-23 23:52:10

标签: javascript angular angular-reactive-forms reactive-forms

在这种情况下,我必须像下面的[1, 2, 454, 5456]一样将数据传递到服务器

以及FormGroup的formArray中的数据

我尝试创建一个空数组,然后将空formControl推入该数组,但这不起作用

    this._fb.group({
      content: this._fb.group({
        question: [null, Validators.required],
        media: [null, Validators.required],
        options: this._fb.array([new FormControl(null), new FormControl(null), new FormControl(null), new FormControl(null)]),
        correct_answer: [null, Validators.required],
      })
    });

我要使用['1st option', '2nd option']之类的选项数据,但是我无法在模板中定义formControlName。如果我定义了一些,它将尝试找出formArray的index属性。

我的预期结果 ['1st option', '2nd option']

2 个答案:

答案 0 :(得分:0)

您只需要在formControls内命名formArray

答案 1 :(得分:0)

 <! -- inside HTML do --> 
 <form [formGroup]="nameofForm" >
  <div formGroupName="content"> 
 <ng-container formArrayName="options">
    <div *ngFor="let controls of nameOfForm.get('options').controls, let i =index"> 
        <input type="text">  formControlName="i" />
   </div> 
 </ng-container>
</div>
</form>