簡體   English   中英

如何將動態創建的表單字段綁定到Angular 2中的對象?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM