Erstellen einer Autocomplete-Funktion mit Elasticsearch und AngularJS UI bootstrap typeahead. Fast fertig, aber ich habe Probleme, die Ergebnisse im Drop-down anzuzeigen.Elasticsearch Autocomplete mit AngularJS typeahead
Was zur Zeit in der Dropdown-Liste angezeigt wird, wenn ich die Buchstaben a drücken und ich weiß, gibt es Vorschläge für diesen Brief ist:
[object Object]
Dies ist mein Controller-Code
$scope.getSuggestions = function(query) {
$scope.isSearching = true;
return searchService.getSuggestions(query).then(function(es_return){
var phrases;
var phrases = es_return.hits.hits;
return $scope.autocomplete.suggestions = phrases;
$scope.isSearching = false;
});
};
Und das ist meine hTML-Formular
<form ng-submit="search()" class="form-horizontal col-md-8 col-md-offset-2" id="hp-search-form">
ich eine ES match_phrase_prefix
Abfrage bin mit gekoppelt mit einem Shingles
Analysator, der gut arbeitet - Ergebnisse in Sense erwartet zu werden. Wenn ich zum Sense-Plugin für ES gehe, bekomme ich viele Antworten zurück, wenn ich "a" tippe, damit ich den ES-Teil dieser Arbeit kenne. Wo gehe ich falsch mit UI Bootstrap Typahead?
Ich tat, wie Sie vorgeschlagen und in der Dropdown nicht mehr angezeigt. Die Vorschläge sind da (ich überprüfte die Konsole), aber nun wird auch das Dropdown-Menü nicht mehr angezeigt .... – user3125823
@ user3125823 Was gibt es in den 'Phrasen'? Das ist das Problem, glaube ich. Den Code zurückverwandeln und sehen, was in den Phrasen drin steht? 'console.log (Phrasen)' oder so? –
ok wird, danke für deine hilfe – user3125823