2017-11-27 14 views
0

私は角度のドキュメントに基づいて動的なフォームを持っていますが、ユーザーに保存されたフォームを読み込ませる機能があります。現在、私はtextfieldやradiobuttonのような他のフォームフィールドの値にパッチを当てることができますが、値は配列なので配列ではできません。 は、私は機能を作っrecommencd、そこにフォームを作成し、次のコード角度4の動的フォームのpatchvalueの配列

if(value instanceof Array){ 
     value.forEach((subVal, index)=>{ 
      let a = subVal.value 
      this.form.controls[key].patchValue({index,a}) 
     }) 
      // 
     }else{ 
     this.form.controls[key].patchValue(value); 
     } 
+1

あなたは配列形式を共有することができます:

はあなただけで一つの値を更新したい場合はこのように.patchValue()

を使用することができますか? –

+0

あなたはこれをスタックブリッツで複製できますか? –

答えて

0

を持っています。レコードを保存したり作成したりするときは、関数を呼び出す必要があります。

createForm(data: any){ 
    let newFormArray: FormGroup[] = []; 
    for(let i = 0; i > data.length; i++){ 
    newFormArray.push(this.fb.group({ 
        id: data[i].id, 
        name: data[i].name 
    })); 
    } 
    this.form = this.fb.group({ 
     array: this.fb.array(newFormArray) 
    }) 
} 
関連する問題