После выполнения поиска, когда у вас есть местоположения, вы можете использовать bounds.extend
и map.fitBounds
, чтобы карта автоматически увеличивала масштаб, чтобы показать все пины, возвращенные вашим поиском, например:
//places is an array that contains the search result
var bounds = new google.maps.LatLngBounds();
for (var i = 0, place; place = places[i]; i++) {
//pass the location of each place to bounds.extend
bounds.extend(place.geometry.location);
}
//tell your map to sets the viewport to contain all the places.
map.fitBounds(bounds);
С другой стороны, если вы выполняете поиск зоны, такой как почтовый индекс, город или страна, с помощью геокодера, вы также можете использовать map.fitBounds
, чтобы установить в окне просмотра всю конкретную зону, которая была возвращена геокодер, вот так:
//response is the geocoder's response
map.fitBounds(response[0].geometry.viewport);
Вот кодовая ручка с примером геокодера https://codepen.io/jaireina/pen/gLjEqY