角度形式数组推送形式组

Uro*_*zic 1 forms typescript angular angular-reactive-forms

每次尝试这样的事情时,都会向我显示错误“TypeError:control.setParent 不是函数”...目标是获得答案('odgovori' FormArray),但不是在输入上循环,而是在单选组中循环...比用户选择单选按钮作为正确答案并存储全部。什么时候:

console.log(this.odgovorForm.value)
Run Code Online (Sandbox Code Playgroud)

一切都显示正常,但是当推送时显示错误

get odgovori() {
    return this.pitanjeForm.get('odgovori') as FormArray;
  }

 pitanjeForm = this.fb.group({
    data: ['', [Validators.required]],
    odgovori: this.fb.array([]),
    tacan: ['', [Validators.required]]
  });

  odgovorForm = this.fb.group({
    data: ['', [Validators.required]],
    color: 'danger'
  });

  addAnswer(): void {
    console.log(this.pitanjeForm.value, this.odgovorForm.value);
    this.info = this.odgovorForm.value;
    this.odgovori.push(this.info);
  }
Run Code Online (Sandbox Code Playgroud)

超文本标记语言

<form [formGroup]="pitanjeForm">
 <div>
   <input formControlName="data">
 </div>
  <form [formGroup]="odgovorForm">
    <input formControlName="data">
    <button (click)="addAnswer()"></button>
  </form>
 <div *ngFor="let odgovor of odgovor.value; index as i">
   <input type="radio" value="{{ i }}"> 0 - 30<br>
 </div>
</form>
Run Code Online (Sandbox Code Playgroud)

Uro*_*zic 6

哦..我的错误

addAnswer(): void {
 this.odgovori.push(this.odgovorForm)
}
Run Code Online (Sandbox Code Playgroud)

要将 FormGROUP 推送到 FORM 数组,请始终推送整个 FORMGROUP,而不仅仅是值或控件!