Google Places API - запрос деталей
В настоящее время я создаю веб-сайт, который использует ваше текущее местоположение и находит для вас ближайших врачей. Я использую Google Places API для этого.
Сайт успешно находит ближайших врачей без проблем, но пока не отображает детали, и у меня возникают проблемы с его реализацией.
После некоторых исследований я нашел более подробную информацию о коде, который я считаю необходимым реализовать ( ЗДЕСЬ).
Я проводил некоторые исследования и тестировал много разных вещей, но я не могу найти, где и как мне нужно реализовать это в моем коде. Я новичок в разработке, поэтому я могу пропустить что-то очевидное.
Спасибо за чтение!
Вот мой код, который я использую, чтобы найти врачей рядом с текущим местоположением пользователя.
$(document).ready(function()
{
navigator.geolocation.getCurrentPosition(initialize);
});
var map, placesList;
function initialize(position) {
var lat = position.coords.latitude;
var lon = position.coords.longitude;
var currentLocation = new google.maps.LatLng(lat, lon);
map = new google.maps.Map(document.getElementById('map-canvas'), {
center: currentLocation,
zoom: 8
});
var request = {
location: currentLocation,
radius: 750,
types: ['doctor']
};
placesList = document.getElementById('places');
var service = new google.maps.places.PlacesService(map);
service.nearbySearch(request, callback);
}
function callback(results, status, pagination) {
if (status != google.maps.places.PlacesServiceStatus.OK) {
return;
} else {
createMarkers(results);
if (pagination.hasNextPage) {
var moreButton = document.getElementById('more');
moreButton.disabled = false;
google.maps.event.addDomListenerOnce(moreButton, 'click',
function() {
moreButton.disabled = true;
pagination.nextPage();
});
}
}
}
function createMarkers(places) {
var bounds = new google.maps.LatLngBounds();
for (var i = 0, place; place = places[i]; i++) {
var image = {
url: place.icon,
size: new google.maps.Size(71, 71),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(17, 34),
scaledSize: new google.maps.Size(25, 25)
};
var marker = new google.maps.Marker({
map: map,
icon: image,
title: place.name,
position: place.geometry.location
});
placesList.innerHTML += '<li>' + place.name + '</li>';
bounds.extend(place.geometry.location);
}
map.fitBounds(bounds);
}
google.maps.event.addDomListener(window, 'load', initialize);
1 ответ
Это может быть немного слишком поздно, но у меня был тот же вопрос и я получил ответ. Подробная информация о каждом магазине находится на маркере, и я не могу придумать, чтобы перечислить все детали вместо этого. Однако это может помочь вам! Google Places API - адрес и номер телефона?