2017-05-08 2 views
2

Ich habe zwei Formen zuerst ist Elternteil. (Ich bezog https://scotch.io/tutorials/how-to-build-nested-model-driven-forms-in-angular-2) verschachtelte Form tut.Wie bekomme ich den Wert Form Group in Angular-2

In ersten Formen Felder in einem Feld Ich schob eine andere Form (um mehrere Filter zu erreichen)

als: search meine erste Form ist und Adressen ist eine formarray

this.searchForm = this.fb.group({ 
     addresses: this.fb.array([]), 
    }); 

Jetzt verwende ich ein anderes Formular, das basierend auf einer Benutzereingabe in die Adresse geschoben wird. In erster Form html erschaffe ich zweite Form html als:

<div formArrayName="addresses"> 
           <div *ngFor="let address of searchForm.controls.addresses.controls; let i=index" class="panel panel-default"> 
            <div class="panel-heading"> 
            <span>Filter {{i + 1}}</span> 
            <a href="JavaScript:void(0);" *ngIf="searchForm.controls.addresses.controls.length > 1" (click)="removeAddress(i)"><u>Close</u></a> 
            </div> 
            <div class="panel-body" [formGroupName]="i"> 
            <address [group]="searchForm.controls.addresses.controls[i]"></address> 
            </div> 
           </div> 
          </div> 

** Meine Frage ist, wenn ich mich schaff' vorbei bin [Gruppe] = "searchForm.controls.addresses.controls [i] so ist es ein Art, wie ich in der zweiten Form HTML reterieve

Antwort

3

ich denke, man es an Ihre Adresse Komponente passieren könnte (wie Sie mit der Gruppe zu tun), um die @Input() decorator

<address [index]="i" [group]="searchForm.controls.addresses.controls[i]"></address>

Und in Ihrer Adresse Komponente.?

@Input() 
public index: number; 
+0

Dank viel arbeitete wie ein Charme. –

Verwandte Themen