Javascript no se vuelve a ejecutar entre diferentes páginas

Hola a todos,

He desarrollado un componente de tema que rota utilizando la librería swiper.js. En la etiqueta head de mi componente, cargo los archivos JS/CSS de Swiper desde un CDN y también declaro el elemento en la página como un swiper dentro de una función window.ready.

El problema que estoy encontrando es que funciona correctamente cuando navegas directamente a esa página, pero si haces clic en cualquier enlace del sitio Discourse que te lleve a esa página, la primera diapositiva se carga como una imagen estática y este componente no se anima (no rota) hasta que recargas la página.

Sospecho que esto se debe a que el JavaScript no se vuelve a ejecutar al navegar entre páginas en Discourse; en su lugar, solo se genera contenido en las diferentes páginas. ¿Es así como funciona Discourse y, de ser así, ¿existe alguna solución alternativa?

1 me gusta

Necesitas colocar este código en un componente del tema:

<script type="text/discourse-plugin" version="0.8">
    api.onPageChange(() =>{
        callYourFunctionHere();
    });
</script>
1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.