@astrojs/ svelte
Questi contenuti non sono ancora disponibili nella tua lingua.
This Astro integration enables rendering and client-side hydration for your Svelte 5 components. For Svelte 3 and 4 support, install @astrojs/svelte@5
instead.
Installation
Section titled InstallationAstro includes an astro add
command to automate the setup of official integrations. If you prefer, you can install integrations manually instead.
To install @astrojs/svelte
, run the following from your project directory and follow the prompts:
npx astro add svelte
pnpm astro add svelte
yarn astro add svelte
If you run into any issues, feel free to report them to us on GitHub and try the manual installation steps below.
Manual Install
Section titled Manual InstallFirst, install the @astrojs/svelte
package:
npm install @astrojs/svelte
pnpm add @astrojs/svelte
yarn add @astrojs/svelte
Most package managers will install associated peer dependencies as well. If you see a Cannot find package 'svelte'
(or similar) warning when you start up Astro, you’ll need to install Svelte and TypeScript:
npm install svelte typescript
pnpm add svelte typescript
yarn add svelte typescript
Then, apply the integration to your astro.config.*
file using the integrations
property:
import { defineConfig } from 'astro/config';import svelte from '@astrojs/svelte';
export default defineConfig({ // ... integrations: [svelte()],});
And create a new file called svelte.config.js
in your project root directory and add the following code:
import { vitePreprocess } from '@astrojs/svelte';
export default { preprocess: vitePreprocess(),}
Getting started
Section titled Getting startedTo use your first Svelte component in Astro, head to our UI framework documentation. You’ll explore:
- 📦 how framework components are loaded,
- 💧 client-side hydration options, and
- 🤝 opportunities to mix and nest frameworks together
Options
Section titled OptionsThis integration is powered by @sveltejs/vite-plugin-svelte
. To customize the Svelte compiler, options can be provided to the integration. See the @sveltejs/vite-plugin-svelte
docs for more details.
You can set options either by passing them to the svelte
integration in astro.config.mjs
or in svelte.config.js
. The options in astro.config.mjs
will take precedence over the options in svelte.config.js
if both are present:
import { defineConfig } from 'astro/config';import svelte from '@astrojs/svelte';
export default defineConfig({ integrations: [svelte({ extensions: ['.svelte'] })],});
export default { extensions: ['.svelte'],};
Preprocessors
Section titled Preprocessors@astrojs/svelte@2.0.0
If you’re using SCSS or Stylus in your Svelte files, you can create a svelte.config.js
file so that they are preprocessed by Svelte, and the Svelte IDE extension can correctly parse the Svelte files.
import { vitePreprocess } from '@astrojs/svelte';
export default { preprocess: vitePreprocess(),};
This config file will be automatically added for you when you run astro add svelte
. See the @sveltejs/vite-plugin-svelte
docs for more details about vitePreprocess
.