我需要實現使用angularjs從$ http請求中提取建議的typeahead功能。我正在使用Bootstrap 3.1。我一直無法得到任何建議的實施工作。大多數似乎使用Bootstrap 2.有許多第三方解決方案,其中沒有任何一個能夠使用,其中包括ui-bootstrap,typeahead.js(來自twitter)以及其他建議。目前最簡單的方法是什麼?我發現只有6個月大的東西已經過時了。當前在angularjs中實現typeahead的最佳方式
我想在這裏列出的說明: http://angular-ui.github.io/bootstrap/#/getting_started
我的視圖代碼:
<label for="originLocation" class="control-label">Origin Location</label>
<input id="originLocation" class="form-control"
ng-model="OriginLocation"
typeahead="suggestion for suggestion in getOriginSuggestions(OriginType, $viewValue)"
placeholder="Enter Location">
我的控制器:
$scope.getOriginSuggestions = function (locationType, phrase) {
locationRepository.searchByType(locationType, phrase)
.then(function (response) {
var locations = [];
angular.forEach(response.data, function (item) {
locations.push(item.LongDescription);
})
return locations;
});
我的控制器被打,我也得到地點填充,但我從來沒有看到打字行爲。這是因爲typeahead屬性在bootstrap 3.1中不起作用嗎?
@ user1066946的答案觸目驚心。 angular-bootstrap-ui中的'typeahead'指令期望從異步調用返回一個承諾。 – dmahapatro