Tengo un conjunto de componentes Astro para ser llamados por mi aplicación:
apps/myProject libs/components/headerDentro del componente header.astro, tengo un script que quiero que se ejecute una vez que se represente toda la página:
<script is:inline> console.log('hej!'); window.onload = (e) => { console.log('loaded!'); }; </script> El 'hej!' se está imprimiendo pero no el 'loaded!' . ¿Porqué es eso?
Para mí, no está claro cómo funciona el ciclo de vida del componente en Astro, y he seguido esta solución agregando la propiedad is:inline a la etiqueta del script, pero aún no funciona.
Piense en los archivos *.astro como todos del lado del servidor, no puede usar <script>...</script> dentro del
--- --- pero puede usar <script></script> en la parte html del archivo astro. el siguiente ejemplo funciona bien para mí.
--- --- <script> console.log('hello'); window.onload = (e) => { console.log('loaded!'); }; </script> <p>hello world!</p>