title | i18nReady |
---|---|
Utiliser les Intégrations |
true |
import IntegrationsNav from '/components/IntegrationsNav.astro';
import PackageManagerTabs from '/components/tabs/PackageManagerTabs.astro'
import { Steps } from '@astrojs/starlight/components'
Les intégrations Astro permettent d'ajouter de nouvelles fonctionnalités et de nouveaux comportements à votre projet en quelques lignes de code. Vous pouvez écrire une intégration personnalisée vous-même, utiliser une intégration officielle ou utiliser des intégrations construites par la communauté.
Les intégrations peuvent...
- Débloquer React, Vue, Svelte, Solid et d'autres frameworks UI populaires.
- Intégrer des outils comme Tailwind et Partytown avec quelques lignes de code.
- Ajouter de nouvelles fonctionnalités à votre projet, comme la génération automatique de sitemap.
- Écrire du code personnalisé qui s'accroche au processus de construction, au serveur de développement, et plus encore.
:::tip[Répertoire des intégrations] Parcourez ou recherchez des centaines d'intégrations officielles et communautaires dans notre répertoire d'intégrations. Trouvez des packages à ajouter à votre projet Astro pour l'authentification, l'analyse, la performance, le référencement (SEO), l'accessibilité, l'interface utilisateur, les outils de développement, et plus encore. :::
Les intégrations suivantes sont gérées par Astro.
Astro inclut une commande astro add
pour automatiser la mise en place des intégrations officielles. Plusieurs plugins communautaires peuvent également être ajoutés en utilisant cette commande. Veuillez consulter la documentation de chaque intégration pour savoir si astro add
est supporté, ou si vous devez installer manuellement.
Exécutez la commande astro add
en utilisant le gestionnaire de paquets de votre choix et notre assistant d'intégration automatique mettra à jour votre fichier de configuration et installera toutes les dépendances nécessaires.
Il est même possible d'ajouter plusieurs intégrations en même temps !
```shell npx astro add react tailwind partytown ``` ```shell pnpm astro add react tailwind partytown ``` ```shell yarn astro add react tailwind partytown ```:::note[Gestion des dépendances d'intégration]
Si vous voyez des avertissements comme Cannot find package '[package-name]'
après avoir ajouté une intégration, votre gestionnaire de paquets peut ne pas avoir installé les dépendances des pairs pour vous. Pour installer ces paquets manquants, lancez npm install [nom-du-paquet]
.
:::
Les intégrations Astro sont toujours ajoutées via la propriété integrations
dans votre fichier astro.config.mjs
.
Il y a trois façons d'importer une intégration dans votre projet Astro :
- En installant un paquet d'intégration npm.
- En important votre propre intégration depuis un fichier local dans votre projet.
- En écrivant votre intégration en ligne, directement dans votre fichier de configuration.
// astro.config.mjs
import { defineConfig } from 'astro/config';
import installedIntegration from '@astrojs/vue';
import localIntegration from './my-integration.js';
export default defineConfig({
integrations: [
// 1. Importer à partir d'un paquet npm installé
installedIntegration(),
// 2. Importer depuis un fichier JS local
localIntegration(),
// 3. Depuis un objet en ligne
{name: 'namespace:id', hooks: { /* ... */ }},
]
})
Consultez l'API intégration de référence pour connaître les différentes façons d'écrire une intégration.
Installez une intégration en utilisant un gestionnaire de paquet, puis mettez à jour astro.config.mjs
manuellement.
Par exemple, pour installer l'intégration @astrojs/sitemap
:
-
Importez l'intégration dans votre fichier
astro.config.mjs
, et ajoutez-la à votre tableauintegrations[]
, avec toutes les options de configuration :import { defineConfig } from 'astro/config'; import sitemap from '@astrojs/sitemap'; export default defineConfig({ // ... integrations: [sitemap()], // ... });
Notez que les différentes intégrations peuvent avoir des paramètres de configuration différents. Lisez la documentation de chaque intégration, et appliquez toutes les options de configuration nécessaires à l'intégration choisie dans
astro.config.mjs
Les intégrations sont presque toujours conçues comme des fonctions "factory" qui renvoient l'objet d'intégration proprement dit. Cela vous permet de passer des arguments et des options à la fonction "factory" afin de personnaliser l'intégration pour votre projet.
integrations: [
// Exemple : Personnalisez votre intégration avec des arguments de fonction
sitemap({filter: true})
]
Les intégrations Falsy sont ignorées, vous pouvez donc les activer et les désactiver sans vous soucier des valeurs undefined
et booléennes laissées en suspens.
integrations: [
// Exemple : Sauter la construction d'un plan du site sous Windows
process.platform !== 'win32' && sitemap()
]
Pour mettre à jour toutes les intégrations officielles en une seule fois, lancez la commande @astrojs/upgrade
. Cela mettra à jour Astro et toutes les intégrations officielles vers leurs dernières versions.
Pour mettre à jour manuellement une ou plusieurs intégrations, utilisez la commande appropriée de votre gestionnaire de paquets.
```shell # Exemple : mise à jour des intégrations React et Tailwind npm install @astrojs/react@latest @astrojs/tailwind@latest ``` ```shell # Exemple : mise à jour des intégrations React et Tailwind pnpm add @astrojs/react@latest @astrojs/tailwind@latest ``` ```shell # Exemple : mise à jour des intégrations React et Tailwind yarn add @astrojs/react@latest @astrojs/tailwind@latest ```Pour supprimer une intégration, désinstallez d'abord l'intégration de votre projet
```shell npm uninstall @astrojs/react ``` ```shell pnpm remove @astrojs/react ``` ```shell yarn remove @astrojs/react ```Ensuite, supprimez l'intégration de votre fichier astro.config.*
:
import { defineConfig } from 'astro/config';
import react from '@astrojs/react';
export default defineConfig({
integrations: [
react()
]
})
Vous trouverez de nombreuses intégrations développées par la communauté dans le répertoire des intégrations d'Astro. Suivez les liens pour obtenir des instructions détaillées d'utilisation et de configuration
L'API d'intégration d'Astro s'inspire de Rollup et de Vite, et est conçue pour être familière à quiconque a déjà écrit un plugin Rollup ou Vite.
Consultez l'API intégration de référence pour apprendre ce que les intégrations peuvent faire et comment en écrire une vous-même.