2017-09-11 10 views
2

私は角度4のアプリケーションに取り組んでおり、私は反応型を使用しています。私は新しいフォームコントロールを作成する際に1つの問題が発生しています。すでに別のFormArray内にあるFormArrayの内部で新しいコントロールをプッシュする方法はありますか?

活字体:

couponForm : FormGroup; 
"industries": [ 
      { 
       "id": 1, 
       "name": "Home Cleaning", 
       "is_active": true, 
       "forms": [ 
       { 
        "id": 1, 
        "name": "Form 1", 
       } 
      }, 
      { 
       "id": 2, 
       "name": "Office Cleaning", 
       "is_active": true, 
       "forms": [ 
       { 
        "id": 2, 
        "name": "Form 2", 
       } 
      } 
]; 

constructor(private formBuilder: FormBuilder) 
{ 
    this.couponForm = this.formBuilder.group({}); 
} 

addIndustriesControl() 
{ 
    this.couponForm.addControl('applicable_with_industries', this.formBuilder.array([])); 

    let industriesArray = 
<FormArray>this.couponForm.controls['applicable_with_industries']; 

    this.globalSettings.industries.forEach((industry, index) =>{ 
     let control = this.formBuilder.group({ 
     industry_id : [industry.id], 
     status  : [], 
     forms   : this.formBuilder.array([]) 
     }); 

     industriesArray.push(control); 
    });  
} 

私は、各業界内のフォームの配列に新しいコントロールを追加します。どのように私はそれを行うことができますか教えてください?

+0

あなたは[this](https://rahulrsingh09.github.io/AngularConcepts/reactive)のようなものを探していると思います。深いネスティングが必要な場合は、そのページにstackblitzリンクがある –

+0

申し訳ありませんが、私はそのリンクから何も得られませんでした。 –

+0

何も意味がありませんでしたか?それを短くチェックするhttps://stackblitz.com/edit/deep-nested-reactive-form –

答えて

0

let =(this.couponForm.controls ['applicable_with_industries'])。controls [index] .get( 'forms');

関連する問題