私は、AngularJS、UIルータ、UIブートストラップの先読みとElasticsearchで小さな映画検索アプリを構築しました。参考までに、私は昨日ここにthisと頼んでいい、すばやく答えました。私はそれをng-keypressなしで動作させることができました。私は単に$state.go()
を関数に入れてリンク/トランジションを行いました。検索入力のキーを押すと、ホーム/クエリページから結果ページに移動します。ただし、提案は表示されません。結果ページに行くと何も起こりません。私は検索入力に再度入力して、実行するための提案と検索をしなければならない。
私は、ユーザーが検索入力を入力して結果ページに移動し、そこに到着すると、候補が表示されて検索が実行できるようになると、HP上で機能を取得しようとしています。
は、ここに私のコード
HTML
<form ng-submit="vm.search()" class="form-horizontal col-md-8 col-md-offset-2" id="hp-search-form"><div class="input-group input-group-lg">
<input type="text" name="q" ng-model="vm.searchTerms" ng-keypress="navigate('search')" placeholder="Search" class="form-control input-lg" uib-typeahead="query for query in vm.getSuggestions($viewValue)" typeahead-show-hint="true" typeahead-focus-first="false" typeahead-on-select="vm.search($item)" auto-focus style="border:0px;">
<i ng-show="loadingLocations" class="fa fa-refresh"></i>
<div ng-show="noResults">
<i class="fa fa-remove"></i> No Results Found
</div>
<span class="input-group-btn">
<button class="btn btn-primary btn-lg" type="submit" value="Search" id="hp-search-button" ng-submit="vm.search()"><i class="fa fa-search fa-lg"></i></button>
</span>
とあなたは$の状態と一緒に結果を渡すことができsearchCtrl
vm.getSuggestions = function(query) {
$state.go('search');
console.log(vm.searchTerms);
vm.isSearching = true;
console.log(vm.searchTerms);
return searchService.getSuggestions(query).then(function(es_return){
console.log(vm.searchTerms);
var suggestions = es_return.hits.hits;
if (suggestions) {
//console.log(suggestions);
return vm.autocomplete.suggestions = suggestions.map(function(item) {
return item._source.ymme;
//console.log(autocomplete.suggestions);
});
}
else {
vm.autocomplete.suggestions = [];
vm.noResults = true;
}
vm.isSearching = false;
},
function(error) {
//console.log('ERROR: ', error.message);
vm.isSearching = false;
});
};
$ state.go( 'search')を書いたとき; 、もっとコードは実行されません。プランナーを作成してみてください。 –
@MandeepSingh - "いつ" "どこで" $ state.go( "検索")を書かなければならないと思います。私はプランカを作ろうとするだろう、時間を取るかもしれない - 前にそれをしなかった。つまり、どこに$ state.goを置いても、コードは実行を停止します...? – user3125823
なぜ検索結果を取得するために状態を変更していますか。 – pritesh