我正在做一个角度为1.2.x的项目,我有一个使用ng-repeat和一组对象生成的单选按钮列表。为什么角度ng重复添加属性到我的模型?
标记
<div ng-repeat="answer in question.answers track by $index">
<label>
<input type="radio" name="answers" ng-value="answer" ng-model="myDataModel">{{answer.text}}
</label>
</div>
阵列
[
{
"id":"0",
"parentId":"0a4540dfec6549b4a3bd1b8fb6169d77",
"text":"peanuts"
},
{
"id":"1",
"parentId":"deka9fkac6549b4a3bd1b8fb6169d77",
"text":"cashews"
},
{
"id":"2",
"parentId":"0a4540dfec6asdf4a3bd1b8fb6169d77",
"text":"brazil nuts"
}
]
如果我使用预标签来查看我的模型,我通过这样的收音机选择...
<pre>{{myDataModel | json}}</pre>
我看到随机属性攀登到我这样的数据上
{
"id":"0",
"parentId":"0a4540dfec6549b4a3bd1b8fb6169d77",
"text":"peanuts",
"spc_mXSzO":0,
"idx_mXSzO":0
}
从我的服务器加载数据后,当我尝试预先选择一个单选按钮时,这会引发问题。当我的控制器将我的模型设置为等于其中一个答案时,它不具有这些属性,因此它不会选择收音机。此外,每次刷新页面时,这些属性名称都会更改,因此我无法嘲笑它们。这些来自哪里,我可以在预先选择答案时尝试解决这些问题?
我从来没有见过Angular添加过类似的东西。我看到它唯一添加到数据的前缀是$。你可以创建一个能够重现问题的plunkr吗?我试过但无法让你的代码正常工作。 – 2015-02-07 01:50:09