[英]How to bind dynamically created form fields to an object in Angular 2?
我正在嘗試使用Angular 2通過為每個屬性動態創建輸入字段為任意對象構建通用形式。
給定一個對象entity
我使用管道獲取屬性數組,遍歷每個屬性。
為每個屬性key
創建一個字段,然后將其綁定回該entity
。
這是代碼:
<tr *ngFor="let key of entity | keys">
<td><label for="{{key.key}}">{{key.key}}</label></td>
<td><input id="{{key.key}}" type="text" [(ngModel)]="key.value"></td>
</tr>
因此,問題在於這些字段是使用[(ngModel)]="key.value"
綁定到keys
而不是entity
。
有什么方法可以將字段綁定到entity
嗎?
還是有另一種方法來更新實體上的值?
在ngFor
使用index
來綁定實體值。
<tr *ngFor="let key of entity | keys;let i = index">
<td><label for="{{key.key}}">{{key.key}}</label></td>
<td><input id="{{key.key}}" type="text" [(ngModel)]="entity[i].value"></td>
</tr>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.