角2:ngfor与ngmodel得到错误的值
问题描述:
我有以下的(简化)模板:角2:ngfor与ngmodel得到错误的值
<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>
如果我绑定到输入元素与价值:value="{{ input.event.value }}"
,那么这个值是正确的。
答
不要试图结合这样的:
value="{{ input.event.value }}"
正确的方式Angular2:
[value]="input.event.value"
试试这个:
<input *ngSwitchCase="'java.lang.String'" type="text" [value]="input.event.value">
答
我并没有设置在该name
场输入元素正确,这显然是造成这种情况。
我有类似的问题[在我的情况(http://stackoverflow.com/questions/41265761/using-ngfor-with-ngmodel-dynamic-data-wrong-behaviour)并给予答复解决了这个problem-加上' [ngModelOptions] =“{standalone:true}”' –