我的角度绑定似乎遇到了种族问题,我的选择中有一个ngOptions有时会绑定,有时则不会,这取决于对API的调用需要多长时间才能将数据拉回来。如果在调用完成之前呈现DOM,则不会显示选项的值,如果它在调用后呈现,则会显示它们。
我假设ngOptions有内置的东西绑定到DOM而不管渲染,这个假设是错误的,还是我正在做的事情?
<select id="Colour" class="form-control" ng-combo-box chosen="items2" ng-model="entity['ColourID']" ng-options="option.ColourID as option.Colour for option in colours">
</select>
控制器代码:
$scope.loadColours = function(category){
var p = {};
if (category){
p.catid = category;
}
Restangular.all('ProductColour').getList(p)
.then(
function(event) {
$scope.colours = event;
},
function(event) {
//Bad things went down.
console.log(event);
}
);
};
我可以在控制台中看到调用完成并且数据符合预期,问题纯粹是围绕数据调用的DOM渲染竞争。