Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

191
Visualizações
¿Cómo pasar argumentos a addEventListener para la función de escucha de polígono de Google Maps además del evento?

Quiero enviar otros parámetros para esta función además del evento. Esto es para mostrar la información enviada a la función en la ventana emergente cuando se hace clic en los complementos. ¿Cómo puedo hacer esto?

 var bermudaTriangle = new google.maps.Polygon({ paths: triangleCoords, strokeColor: "#fd7e14", strokeOpacity: 0.8, strokeWeight: 3, fillColor: "rgba(253,126,20,0.62)", fillOpacity: 0.35 }); bermudaTriangle.setMap(map); area_info = {"name" : "1", "shipping_cost" : 100} bermudaTriangle.addListener("click", showArrays); infoWindow = new google.maps.InfoWindow(); function showArrays(event, area) { let contentString = '<div class="form-group pr-2 pl-2">' + '<div class="text-dark">name:</div>' + area.name + '<br>'+ '<div class="text-dark">shipping_cost :</div>' + area.shipping_cost + '$'+ '<br></div>' ; // Replace the info window's content and position. infoWindow.setContent(contentString); infoWindow.setPosition(event.latLng); infoWindow.open(map); }

Cuando envío información en bermudaTriangle.addListener("click", showArrays(area_info) ) a una función, no sé cómo enviar el event . Y cuando llamo a la función como esta bermudaTriangle.addListener("click", showArrays(bermudaTriangle, area_info) ) , el event no funciona correctamente. Intenté esto pero todavía no funcionó.

 bermudaTriangle.addListener("click", showArrays); bermudaTriangle.area = area_info;

y showArrays:

 function showArrays(event, area) { let contentString = '<div class="form-group pr-2 pl-2">' + '<div class="text-dark">name:</div>' + event.currentTarget.name + '<br>'+ '<div class="text-dark">shipping_cost :</div>' + event.currentTarget.shipping_cost + '$'+ '<br></div>' ; // Replace the info window's content and position. infoWindow.setContent(contentString); infoWindow.setPosition(event.latLng); infoWindow.open(map); }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El detector de eventos de click de Polygon solo toma un parámetro. Eso significa que la biblioteca no pasa más de un parámetro cuando llama a la función.

Si la información que necesita no está adjunta al objeto de event , debe recuperarla por otros medios.

Si necesita pasar los parámetros usted mismo, puede escribir una función de orden superior:

 function showArrays(area) { return function (event) { let contentString = '<div class="form-group pr-2 pl-2">' + '<div class="text-dark">name:</div>' + area.name + "<br>" + '<div class="text-dark">shipping_cost :</div>' + area.shipping_cost + "$" + "<br></div>"; // Replace the info window's content and position. infoWindow.setContent(contentString); infoWindow.setPosition(event.latLng); infoWindow.open(map); }; } bermudaTriangle.addListener("click", showArrays(area));
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda