Angular 2:使用ngmodel的ngfor值得错误

时间:2016-11-09 15:04:15

标签: javascript angular

我有以下(简化)模板:

Supplier

我也尝试过:<div *ngFor="let input of inputs; let in=index"> value: {{inputs[in].event.value}} <div [ngSwitch]="input.event.type"> <input *ngSwitchCase="'java.lang.String'" type="text" [(ngModel)]="inputs[in].event.value"> </div>

输入上设置的值是所有渲染输入上的最后一个迭代器变量的值,尽管值是正确的,如:

[(ngModel)]="input.event.value"

如果我使用值value: first value <select value="first value"></select> value: second value <select value="first value"></select> value: third value <select value="first value"></select> 绑定到input元素,那么值是正确的。

2 个答案:

答案 0 :(得分:2)

我没有正确设置输入元素上的name字段,这显然导致了这一点。

答案 1 :(得分:0)

不要试图像这样绑定:

value="{{ input.event.value }}"

Angular2中的正确方法:

[value]="input.event.value"

试试这个:

<input *ngSwitchCase="'java.lang.String'" type="text" [value]="input.event.value">