【发布时间】:2019-03-22 19:18:42
【问题描述】:
我是 ionic 新手,
我想为我的表单设置动态输入字段, 这是我的代码,但我无法设置
home.ts
constructor() {
pData = //Got data from server;
this.myForm1 = this._fb.group({
ship_owner_name: [pData.ship_owner_name],
deck_array: this._fb.array([])
});
this.AddItemData(pData.deck_array);
}
AddItemData(item) {
const arrayControl = < FormArray > this.myForm1.controls['deck_array'];
let newGroup = this._fb.group({
selectedDeck: item
});
arrayControl.push(newGroup);
}
我检索到的服务器数据是:
pData = {
"ship_owner_name": "john smith",
"deck_array": [
"MD 1",
"MD 2"
],
}
模板代码 home.html
<form [formGroup]="myForm1">
<ion-list no-lines class="listMargin">
<ion-item>
<ion-label class="labelColor" stacked>
Ship owner name
</ion-label>
<ion-input formControlName="ship_owner_name" type="text"></ion-input>
</ion-item>
<div formArrayName="deck_array" style="background-color:white">
<ion-list *ngFor="let obj of myForm1.controls.deck_array.controls;let i=index">
<div [formGroupName]="i" >
<ion-item no-lines>
<ion-input placeholder="select from list or type in"></ion-input>
</ion-item>
</div>
</ion-list>
</div>
</ion-list>
请提前帮助和感谢
【问题讨论】:
标签: angular ionic-framework ionic2 ionic3 angular-reactive-forms