Saltar al contenido

@astrojs/ svelte

Esta integración de Astro habilita el renderizado y la hidratación del lado del cliente para tus componentes de Svelte 5. Para soporte de Svelte 3 y 4, instala @astrojs/svelte@5 en su lugar.

Astro incluye un comando astro add para automatizar la configuración de las integraciones oficiales. Si lo prefieres, puedes instalar las integraciones manualmente en su lugar.

Para instalar @astrojs/svelte, ejecuta lo siguiente desde el directorio de tu proyecto y sigue las instrucciones:

Ventana de la terminal
npx astro add svelte

Si tienes algún problema, no dudes en informarnos en GitHub e intenta los pasos de instalación manual a continuación.

Primero, instala el paquete @astrojs/svelte:

Ventana de la terminal
npm install @astrojs/svelte

La mayoría de los gestores de paquetes también instalarán las dependencias peer asociadas. Si ves una advertencia Cannot find package 'svelte' (o similar) al iniciar Astro, necesitarás instalar Svelte y TypeScript:

Ventana de la terminal
npm install svelte typescript

Luego, aplica la integración a tu archivo astro.config.* usando la propiedad integrations:

astro.config.mjs
import { defineConfig } from 'astro/config';
import svelte from '@astrojs/svelte';
export default defineConfig({
// ...
integrations: [svelte()],
});

Y crea un nuevo archivo llamado svelte.config.js en el directorio raíz de tu proyecto y añade el siguiente código:

svelte.config.js
import { vitePreprocess } from '@astrojs/svelte';
export default {
preprocess: vitePreprocess(),
}

Para usar tu primer componente de Svelte en Astro, dirígete a nuestra documentación de frameworks de UI. Explorarás:

  • 📦 cómo se cargan los componentes del framework,
  • 💧 opciones de hidratación del lado del cliente, y
  • 🤝 oportunidades para mezclar y anidar frameworks juntos

Esta integración está impulsada por @sveltejs/vite-plugin-svelte. Para personalizar el compilador de Svelte, se pueden proporcionar opciones a la integración. Consulta la documentación de @sveltejs/vite-plugin-svelte para más detalles.

Puedes establecer opciones pasándolas a la integración svelte en astro.config.mjs o en svelte.config.js. Las opciones en astro.config.mjs tendrán prioridad sobre las opciones en svelte.config.js si ambas están presentes:

astro.config.mjs
import { defineConfig } from 'astro/config';
import svelte from '@astrojs/svelte';
export default defineConfig({
integrations: [svelte({ extensions: ['.svelte'] })],
});
svelte.config.js
export default {
extensions: ['.svelte'],
};
Añadido en: @astrojs/svelte@2.0.0

Si estás usando SCSS o Stylus en tus archivos de Svelte, puedes crear un archivo svelte.config.js para que sean preprocesados por Svelte, y la extensión IDE de Svelte pueda analizar correctamente los archivos de Svelte.

svelte.config.js
import { vitePreprocess } from '@astrojs/svelte';
export default {
preprocess: vitePreprocess(),
};

Este archivo de configuración se añadirá automáticamente cuando ejecutes astro add svelte. Consulta la documentación de @sveltejs/vite-plugin-svelte para más detalles sobre vitePreprocess.

Más integraciones

Frameworks de front-end

Adaptadores

Otras integraciones

Contribuir Comunidad Patrocinar