[英]Google Maps Nearby Places
有人知道我如何在Google地圖pnearby位置搜索中傳遞多種類型的types
var map;
var infowindow;
function initMap() {
var pyrmont = {lat: -33.867, lng: 151.195};
map = new google.maps.Map(document.getElementById('map'), {
center: pyrmont,
zoom: 15
});
infowindow = new google.maps.InfoWindow();
var service = new google.maps.places.PlacesService(map);
service.nearbySearch({
location: pyrmont,
radius: 500,
types: ['store']
}, callback);
}
function callback(results, status) {
if (status === google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
createMarker(results[i]);
}
}
}
function createMarker(place) {
var placeLoc = place.geometry.location;
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name);
infowindow.open(map, this);
});
}
我嘗試使用以下多種語法編寫類型,但顯示錯誤的位置。
types: 'bank|bar|airport' types: ['bank','bar'] types: ['bank'|'bar']
有誰有更好的解決方案,我將不勝感激。
您缺少必需的屬性query
。 這為API提供了一個關鍵詞,以便像企業名稱一樣進行搜索。 這些類型提供了其他過濾器,以提供與您的請求最相關的信息。
此方法接受具有以下字段的請求:
var map; var infowindow; function initMap() { var timesSquare = { lat: 40.759011, lng: -73.984472 }; map = new google.maps.Map(document.getElementById('map'), { center: timesSquare, zoom: 18 }); infowindow = new google.maps.InfoWindow(); var service = new google.maps.places.PlacesService(map); service.nearbySearch({ location: timesSquare, radius: 50, query: 'new york', types: ['bank'|'bar'] }, callback); } function callback(results, status) { if (status === google.maps.places.PlacesServiceStatus.OK) { console.log(results); for (var i = 0; i < results.length; i++) { createMarker(results[i]); } } } function createMarker(place) { var placeLoc = place.geometry.location; var marker = new google.maps.Marker({ map: map, position: place.geometry.location }); google.maps.event.addListener(marker, 'click', function() { infowindow.setContent(place.name); infowindow.open(map, this); }); }
#map { min-width: 100%; height: 400px; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <script src="https://maps.googleapis.com/maps/api/js?v=3&callback=initMap&libraries=places" async defer> </script> <div id="map"></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.