也许您遇到了附近搜索位置标签的错误。您没有启动变量rak
并且它会返回一个空值。
设置脚本
<script
src="https://maps.googleapis.com/maps/api/js?key=API_KEY&libraries=places&callback=initMap"
async defer></script>
初始化变量
var map;
var infowindow;
var myPlace = {lat: 25.276987, lng: 55.296249 };
致电您的nearBySearch
var service = new google.maps.places.PlacesService(map);
service.nearbySearch({
location : myPlace,
radius : 5500,
type : [ 'restaurant' ]
}, 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);
});
}
您可以在此处找到此代码document https://developers.google.com/maps/documentation/javascript/places#place_search_requests,它将很好地解释正确的编码以及如何使用 api。这里还有支持的位置类型列表 https://developers.google.com/places/supported_types.
我希望这有帮助。