我更新模型时,我的Angular视图没有更新。我试过调用$ scope.apply()无济于事。
<div ng-repeat="(key,value) in Day.items track by $index">
<label class="item item-input item-select">
<div class="input-label">
{{key}}
</div>
<select ng-model="value[$index].itemName" ng-options="item as item for item in Equipment.{{key}}">
<option value="">Select Option</option>
</select>
</label>
<label class="item item-input">
<input type="number" ng-model="value[$index].value" placeholder="Amount/Value">
</label>
<button class="button button-balanced button-outline button-block" ng-click="AddItem(Day,key)">
Add {{key}}
</button>
</div>
然后在我的控制器中:
$scope.AddItem = function(day,key) {
day.items[key].push({itemName : '', value : ''});
}
我做错了什么?如果我从AddItem方法注销day.items [key],它已成功将新对象推入数组,它只是不显示它。
答案 0 :(得分:0)
要双向将模型绑定到控制器变量,您需要在ng-model中指定scope.array而不是直接指定值。
我现在无法测试它,但它应该是这样的:
<label class="item item-input" ng-repeat="(key, value) in Day.items">
{{key}}<input type="text" ng-model="Day.items[key].itemName">
</label >
<强>更新强>
我不知道你的应用程序应该如何显示,所以将你的问题与这个小提琴进行比较。在小提琴中,模型被正确绑定。