Cómo controlar los eventos y las interacciones de los usuarios

Puedes controlar eventos en la instancia LocalContextMapView y en el mapa interno. LocalContextMapView admite solo dos eventos, que se activan cuando un usuario selecciona un lugar (abre la vista de detalles del lugar) y cuando cierra la vista de detalles del lugar. Estos eventos te permiten actualizar los elementos de la IU.

  • placedetailsviewshowstart se activa cuando el usuario selecciona un lugar, antes de que se muestre la vista de detalles del lugar.
  • placedetailsviewhidestart se activa cuando el usuario cierra la vista de Place Details, antes de que se oculte la vista de detalles del lugar.

En el siguiente ejemplo, se muestra cómo configurar ambos objetos de escucha admitidos en una instancia LocalContextMapView (puedes hacerlo en la función initMap()):

// Set the LocalContextMapView event handlers.
localContextMapView.addListener('placedetailsviewshowstart', () => {
  console.log("The 'placedetailsviewshowstart' event just fired!");
});

localContextMapView.addListener('placedetailsviewhidestart', () => {
  console.log("The 'placedetailsviewhidestart' event just fired!");
});

También puedes controlar los eventos de la interfaz de usuario en el mapa que se creó a partir de LocalContextMapView. En el siguiente ejemplo, se muestra un controlador de eventos que se activa cuando el mapa detecta un evento de desplazamiento del mouse:

// Set a mouseover event handler on the inner map.
localContextMapView.map.addListener('mouseover', () => {
  console.log("The mouse just entered the map!");
});

LocalContextMapView también cierra la vista de detalles del lugar o el lightbox de fotos cuando se presiona la tecla Escape. Si deseas cambiar este comportamiento, te recomendamos que agregues un objeto de escucha para el evento keydown y la tecla Escape en la fase de captura al objeto de la ventana para interceptar el comportamiento predeterminado:

// Change the escape key behavior.
window.addEventListener('keydown', event => {
  if (event.key !== 'Escape') return;
  event.stopPropagation();
  // Handle the event.
  // ...
}, /* useCapture= */ true);

Como alternativa, para permitir que LocalContextMapView controle los eventos del teclado antes del código, registra un objeto de escucha keydown en la ventana de la fase de cuadro:

// Won't be fired if LocalContextMapView handled the escape key to close
// the place details view or photo lightbox:
window.addEventListener('keydown', event => {
  if (event.key !== 'Escape') return;
  // Handle the event.
  // ...
}, /* useCapture= */ false);

Más información

  • Mira los eventos en acción. Los ejemplos de la biblioteca de Contexto local muestran los usos más comunes de esa biblioteca, incluidos los detalles de implementación.
  • Obtén más información sobre los eventos en la API de Maps JavaScript.