我正在使用AngularJS Bootstrap typeahead组件来显示来自对象数组的数据。问题是,即使我的数据从我的api调用返回,我仍然会收到以下错误。
COUNTA()
这是控制器目前的样子。
TypeError: Cannot read property 'length' of undefined
和指令
$scope.companySearch = function(val) {
LeadsService.getCompany(val)
.then(function(resp) {
return resp.resp;
});
};
最后她是我试图获取的数据;
<input typeahead="company as item.company_name for item in companySearch($viewValue)" id="companyName" name="company_name" type="text" class="form-control input-md" ng-model="companyDetails.company_name" typeahead-wait-ms="200" required>
如果有帮助,我会在我的承诺退回之前收到错误。
答案 0 :(得分:1)
尝试使用此代码进行Typeahead异步加载数据
$scope.companySearch = function(val) {
return LeadsService.getCompany(val)
.then(function(resp) {
return resp.data;
});
};
答案 1 :(得分:0)
试试这个:
$scope.companySearch = function(val) {
return LeadsService.getCompany(val)
.then(function(resp) {
return resp.resp;
});
};
将promise直接返回给typeahead指令。 typeahead
将等待数据得到解决。