2017-09-08 5 views
1

En un mot, ce que j'aimerais accomplir s'il était possible est ceEst-il possible de nommer dynamiquement formControls dans angulaire 2?

export class MyComponent{ 

    Data: any; 
    {{Data.formCtrlName}} = new formControl(); //this here 

} 

avec Data étant peuplé par un objet JSON qui ressemble à quelque chose comme ça.

{ 
    "id"   : "someId", 
    "name"  : "someName", 
    "formCtrlName": "nameForControl", //using this result as the name for the control 
    "etc"   : "etc", 
    "etc"   : "etc" 
} 

Existe-t-il un moyen de le faire? Jusqu'à présent, tous les documents que j'ai rencontrés montrent comment créer dynamiquement un élément de formulaire déjà défini. Ce que j'essaye de faire est d'insérer le nom pour le formControl de mes données. Comment puis-je faire ceci?

Répondre

1

Faites-le dans le constructeur ou à l'intérieur ngOnInit. Assurez-vous simplement que Data n'est pas null lorsque vous y accédez

export class MyComponent implement OnInit { 
    ngOnInit() { 
    this[this.Data.formControlName] = new FormControl(); 
    } 
}