Tengo un mapa de Google configurado en un control deslizante Slider Revolution y extrae ubicaciones de una base de datos. Lo tengo configurado para que se actualice cada 10 segundos, lo que funciona, pero parece que cada vez que se ejecuta y la diapositiva del mapa no está activa, los pines desaparecen hasta la próxima vez que se actualiza. Me gustaría que se actualice después de cada cambio de diapositiva.
Este es el código que funciona para actualizar cada 10 segundos:
function fetch(){ var mapsvg = this; setInterval(()=>{ mapsvg.database.find() }, 133000); } fetch();
Este es el código que traté de usar para actualizar después del cambio de diapositiva:
revapi2.bind("revolution.slide.onafterswap",function fetch(){ var mapsvg = this; mapsvg.database.find(); }) fetch();
Me sale dos errores con este código:
No capturado (en promesa) TypeError: Window.fetch: Se requiere al menos 1 argumento, pero solo 0 pasó
y
TypeError no detectado: mapsvg.database no está definido
Cualquier ayuda sería muy apreciada.
En el detector de eventos de Slider Revolution, hace referencia a "esto", que es el propio objeto de Slider Revolution en ese caso. Ese objeto no tiene atributo de "base de datos", por lo que falla.
No necesita llamar a fetch() en la segunda parte, ya que la función base de datos.find() se llamará en el evento de intercambio de diapositivas de todos modos.
Como mejor defina global la referencia de mapsvg y en el detector de eventos Slider Revolution simplemente llame a mapsvg.database.find();
Si lo desea, suelte un enlace a la página actual y puedo darle una descripción exacta de cómo hacerlo.