評価、写真、開閉時間などを返すPOI APIが必要で、Google Places APIは私が望むことを実行しているように見えましたが、フィルタリングに問題があります。複数のタイプでオートコンプリート機能を使用したいフィルタリング。
これが私が持っているものです:
var map;
var selectAttractionAutocomplete;
var selectCityAutocompleteOptions = {
types: ['(cities)']
};
map = new google.maps.Map(document.getElementById('map-canvas'), {
center: new google.maps.LatLng(-33.8665433, 151.1956316),
zoom: 15
});
var inputsearchedCity = document.getElementById('input-searched-city');
selectCityAutocomplete = new google.maps.places.Autocomplete(inputsearchedCity, selectCityAutocompleteOptions);
selectCityAutocomplete.bindTo('bounds', map);
google.maps.event.addListener(selectCityAutocomplete, 'place_changed', function () {
console.log(selectCityAutocomplete.getPlace());
});
複数のタイプを使用するにはどうすればよいですか?
パイプ、コンマ、ブラケットを試しました...何も機能しません:
var selectCityAutocompleteOptions = {
types: ['cities|point_of_interest']
};
Googleドキュメント によると、point_of_interest
はタイプ2であり、場所検索のタイプフィルター、または場所を追加するときのタイププロパティではサポートされていません。
クエリ文字列で使用している場合は、|を使用しますセパレータ。現在、コレクションタイプとして有効なのは「geocode | Establishment」のみであることに注意してください。これは、結合されたタイプを指定しない場合と同じです。
参照: https://developers.google.com/places/web-service/autocomplete#place_types
Typesパラメータを渡すことで、PlaceAutocompleteリクエストの結果を特定のタイプに制限できます。以下のサポートされているタイプにリストされているように、パラメーターはタイプまたはタイプコレクションを指定します。何も指定されていない場合は、すべてのタイプが返されます。一般に、単一のタイプのみが許可されます。例外は、ジオコードと施設のタイプを安全に混在させることができることですが、これはタイプを指定しない場合と同じ効果があることに注意してください。
最近これに遭遇しました。答えはここにあります Google Places Auto-Complete
タイプ。2つの明示的なタイプの1つまたは2つのタイプコレクションの1つのいずれかを指定できます。
この質問の一部は このスレッド で回答されています。
まず、サポートされていない「都市」の場所タイプ。サポートされている場所の種類のリストを見つけることができます ここ 。
一度に複数のタイプを使用する方法はありません。ただし、同様の結果を得るためにAPIを2回呼び出すことができます。例えば:
var selectCityAutocompleteOptions1 = {
types: ['Zoo']
};
var selectCityAutocompleteOptions2 = {
types: ['museum']
};
ただし、説明に基づくと、タイプでフィルタリングせずに、すべての興味のあるポイントの結果が必要なようです。その場合は、代わりに プレイスリクエストの検索プレイス検索 を使用することをお勧めします。