Logo Hardware.com.br
Wellinghton Pereira Gomes
Wellinghton... Membro Junior Registrado
81 Mensagens 4 Curtidas

[Resolvido] Duvidas sobre uso de APIs do Google

#1 Por Wellinghton... 21/01/2021 - 20:33
Boa noite, estou trabalhando em um projeto. Onde eu tenho um mapa que é possível desenhar nele.
Coloquei o código que esta na documentação dentro do meu head.
<script
src="https://maps.googleapis.com/maps/api/js?key=SUA_API_AKI&callback=initMap&libraries=drawing&v=weekly" async defer>
</script>

Agora eu queria colocar mais uma API, o places... que permite pedir a localização, e também criar um campo tipo google maps que sugere o local e tudo.
Na documentação pediu para adicionar o seguinte código:
<script
src="https://maps.googleapis.com/maps/api/js?key=SUA_API_AKI&callback=initMap&libraries=places&v=weekly" defer>
</script>

No entanto eu estou com problemas para que funcione os 2. Eu só coloco o código um embaixo do outro? eu coloco no primeiro código um "&" e adiciono "libraries=places"? Desses dois jeitos para de funcionar a ferramenta de desenho.

fonte: https://developers.google.com/maps/documentation/javascript/examples/places-searchbox#all
https://developers.google.com/maps/documentation/javascript/drawinglayer

esse é o codigo para ter o campo tipo google maps, em seguida da ferramenta de desenho, tudo dentro do initMap:

const input = document.getElementById("pac-input&quot;

const searchBox = new google.maps.places.SearchBox(input);

map.addListener("bounds_changed", () => {
searchBox.setBounds(map.getBounds());
});

searchBox.addListener("places_changed", () => {

const places = searchBox.getPlaces();

if (places.length == 0) {
return;
}

const boundss = new google.maps.LatLngBounds();
places.forEach((place) => {
if (!place.geometry) {
return;
}

if (place.geometry.viewport) {
// Only geocodes have viewport.
boundss.union(place.geometry.viewport);
} else {
boundss.extend(place.geometry.location);
}
});
map.fitBounds(boundss);
});

//codigo para a ferramenta de desenho
var ferramenta = new google.maps.drawing.DrawingManager({
drawingControl: true,
drawingControlOptions: {
position: google.maps.ControlPosition.TOP_CENTER,
drawingModes: [
google.maps.drawing.OverlayType.MARKER,
google.maps.drawing.OverlayType.POLYGON,
],
},
polygonOptions: {
fillColor: "#FF0000",
fillOpacity: 0.35,
strokeWeight: 1,
strokeColor: "#FF0000",
strokeOpacity: 0.8,
clickable: true,
draggable: false,
editable: false,
zIndex: 1
},
});

//coloca a ferramenta de desenho no mapa
ferramenta.setMap(map);
Wellinghton Pereira Gomes
Wellinghton... Membro Junior Registrado
81 Mensagens 4 Curtidas
#3 Por Wellinghton...
28/01/2021 - 15:39
esquiloesperto disse:
Para usar duas ou mais bibliotecas juntas no Google Maps basta enumerá-las entre vírgulas – Consta na documentação – É só fazer deste modo:

&libraries=places,drawing


wink.png

esquiloesperto, agradeço pela dica funcionou... peço q desculpe a duplicada, pq achei q n tinha sido muito claro e tentei apagar esse por isso fiz a outra... li a documentação da parte onde se cria as paginas, não sabia que tinha que olhar em outra documentação, por falta de experiencia msm. Agradeço mais uma vez... obg.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal