2017-05-01 2 views
0

Ich habe dieses plunker. Ich schaffe Formularkomponenten dynamisch, basierend auf model (definiert in app.ts) und nichtWie FormControl zu FormGroup dynamisch hinzugefügt werden

formControlName = "name"

zur Komponente hinzufügen. Im control-factory.directive.ts I

this.form.addControl(this.model.name, new FormControl());,

hinzufügen, aber wie kann ich den Wert binden?

+0

https://plnkr.co/edit/cHis6CGClUvhI7PjDxgO?p=preview – yurzui

+0

Thasnks, benutzen Sie bitte diese als Antwort hinzufügen, so kann ich es akzeptieren –

Antwort

2

Um Formwert synchron mit Ihrem eigenen Modell zu halten i control.valueChanges

let control = new FormControl(this.model.data); 
control.valueChanges.subscribe(x => { 
    this.model.data = x; 
}); 
this.form.addControl(this.model.name, control); 

zu halten synchron Form Modell abonnieren würde und sehen i FormControl binden würde Direktive dh formControl

picker reaktiv. component.html

<input [formControl]="form.get(model.name)"> 

Modified Plunker

Verwandte Themen