我的下拉列表没有显示,即使我知道它得到了正确的结果。代码:
<input type="text" ng-model="newSelectedSemester" placeholder="Semester name" typeahead="semester.name for semester in getSemesters($viewValue)">
我可以确认getSemesters正在返回一个对象数组,每个对象都有一个name属性。
我已经在我的网站上的其他地方实现了这个,所以我知道我正在引入正确的依赖关系。我在这里缺少什么?
答案 0 :(得分:2)
发现问题。
我正在使用$ http.get,我正在从&#34;成功&#34;功能,当我应该从&#34;然后&#34;功能。我不知道为什么会这样,但它有效:)
答案 1 :(得分:2)
这是我遇到的另一个解决方案,为我解决了这个问题:
$scope.solution = function(val){
var data = {
cards: val
};
var result = [];
var deferred = $q.defer();
$http.post('/somepath', data)
.success(function(response) {
angular.forEach(response, function(card) {
result.push(card);
});
return deferred.resolve(result);
})
.error(function(){
/* error handling */
});
return deferred.promise;
};
以下是HTML部分的示例:
<input ... uib-typeahead="card as card.number + ' ' + card.suit for card in cardList($viewValue)" />