我想使用已在数组中设置的数据绑定到特定的输入框。使用这段代码,我收到一个错误:
Recommendation.question
包含已通过服务加载的一系列问题。这样可以正常工作,如果只是通过使用它所使用的括号来显示问题的值。只是数组的值不会绑定到输入框。
我得到的错误:
Unhandled Promise rejection: Cannot assign to a reference or variable! ; Zone: <root> ; Task: Promise.then ; Value: ZoneAwareError Error: Cannot assign to a reference or variable!
<div class="list-group-item"
*ngFor="let question of Recommendation.question; let i = index;">
<input class="form-control" name="question" [(ngModel)]="question"/>
{{question}}
{{i}}
</div>
如果我注释掉输入字段,{{question}}
会显示数组当前索引处的正确值。
答案 0 :(得分:1)
问题应该在于[(ngModel)]
变量与迭代中的引用相同,即question
。
这样做应该有效:
<div class="list-group-item"
*ngFor="let question of Recommendation.question; let i = index;">
<input class="form-control" name="question" [(ngModel)]="Recommendation[i]"/>
{{question}}
{{i}}
</div>