尝试从$ http.get
填充数据时,$ digest已在进行中这是我的代码
JSON结果:
[
{
"id": 14,
"name": "RIAU"
},
{
"id": 21,
"name": "KEPULAUAN RIAU"
}
]
控制器:
$scope.getProvince = function(value) {
return $http.get('/api/v1/province', {
params: {
q: value
}
}).then(function(response) {
return response.data;
});
}
HTML
<div class="col-lg-6">
<!-- Province -->
<div class="form-group">
<label>Province</label>
<input type="text" uib-typeahead="province for province.name in getProvince($viewValue)" placeholder="{{ province }}"
typeahead-loading="loadingLocations" typeahead-no-results="noResults"
class="form-control" ng-model="cat.customer.anchor_residence_1.province">
<i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>
<div ng-show="noResults">
<i class="glyphicon glyphicon-remove"></i> No Results Found
</div>
</div>
</div>
任何人都知道如何解决这个问题?
答案 0 :(得分:0)
getProvince函数返回Promise,而不是真实数据。你必须将保存数据和列表数据分开。
Response.Write("<script>window.open('~/book_details.aspx','_blank'</script>");
问题在于混合角度消化循环。
1)在摘要周期中调用getProvince(在html中) 2)在完成返回承诺之前从服务器获取数据。 3)再次获得getProvinxe,因为promise不是list。所以&#34;在摘要周期中进入消化周期&#34;。发生错误。