@astrojs/ preact
Cette intégration Astro permet le rendu côté serveur et l’hydratation côté client pour vos composants Preact.
Pourquoi Preact ?
Titre de la section Pourquoi Preact ?Preact est une bibliothèque qui vous permet de créer des composants d’interface utilisateur interactifs pour le web. Si vous souhaitez créer des fonctionnalités interactives sur votre site à l’aide de JavaScript, vous préférerez peut-être utiliser son format de composant plutôt que d’utiliser directement les API du navigateur.
Preact est également un excellent choix si vous avez déjà utilisé React. Preact fournit la même API que React, mais dans un format beaucoup plus petit de 3 Ko. Il supporte même le rendu de nombreux composants React en utilisant l’option de configuration compat
(voir ci-dessous).
Vous souhaitez en savoir plus sur Preact avant d’utiliser cette intégration ? Consultez “Apprendre Preact en 10 minutes”, un tutoriel interactif sur leur site web.
Installation
Titre de la section InstallationAstro inclut une commande astro add
pour automatiser l’installation des intégrations officielles. Si vous préférez, vous pouvez installer les intégrations manuellement à la place.
Pour installer @astrojs/preact
, exécutez ce qui suit depuis le répertoire de votre projet et suivez les instructions :
Si vous rencontrez des problèmes, n’hésitez pas à nous les signaler sur GitHub et essayez les étapes d’installation manuelle ci-dessous.
Installation manuelle
Titre de la section Installation manuelleTout d’abord, installez le paquet @astrojs/preact
:
La plupart des gestionnaires de paquets installent également les dépendances associées. Si vous voyez un avertissement “Cannot find package ‘preact’” (ou similaire) lorsque vous démarrez Astro, vous devez installer Preact :
Ensuite, appliquez l’intégration à votre fichier astro.config.*
en utilisant la propriété integrations
:
Utilisation
Titre de la section UtilisationPour utiliser votre premier composant Preact dans Astro, consultez notre documentation sur les frameworks d’interface utilisateur. Vous y découvrirez :
- 📦 comment les composants du framework sont chargés,
- 💧 les options d’hydratation côté client, et
- 🤝 les possibilités de mélanger et d’imbriquer les frameworks.
Consultez également notre Documentation sur l’intégration Astro pour en savoir plus sur les intégrations.
Configuration
Titre de la section ConfigurationL’intégration Astro Preact gère le rendu des composants Preact et possède ses propres options. Modifiez ces options dans le fichier astro.config.mjs
qui est l’endroit où se trouvent les paramètres d’intégration de votre projet.
Pour une utilisation basique, vous n’avez pas besoin de configurer l’intégration Preact.
Vous pouvez activer preact/compat
, la couche de compatibilité de Preact pour rendre les composants React sans avoir besoin d’installer ou de livrer les grandes bibliothèques de React aux navigateurs web de vos utilisateurs.
Pour ce faire, passez un objet à l’intégration Preact et mettez compat : true
.
Avec l’option compat
activée, l’intégration Preact rendra les composants React ainsi que les composants Preact dans votre projet et vous permettra également d’importer des composants React à l’intérieur des composants Preact. Pour en savoir plus, consultez “Switching to Preact (from React)” sur le site web de Preact.
Lorsque vous importez des bibliothèques de composants React, afin de remplacer les dépendances react
et react-dom
par preact/compat
, vous pouvez utiliser overrides
pour le faire.
Consultez les documents pnpm
overrides et yarn
resolutions pour leurs fonctionnalités respectives.
Actuellement, l’option compat
ne fonctionne que pour les bibliothèques React qui exportent du code en tant qu’ESM. Si une erreur survient lors de la compilation, essayez d’ajouter la bibliothèque à vite.ssr.noExternal : ['the-react-library']
dans votre fichier astro.config.mjs
.
Options
Titre de la section OptionsCombinaison de plusieurs frameworks JSX
Titre de la section Combinaison de plusieurs frameworks JSXLorsque vous utilisez plusieurs frameworks JSX (React, Preact, Solid) dans le même projet, Astro doit déterminer quelles transformations spécifiques au framework JSX doivent être utilisées pour chacun de vos composants. Si vous n’avez ajouté qu’une seule intégration de framework JSX à votre projet, aucune configuration supplémentaire n’est nécessaire.
Utilisez les options de configuration include
(obligatoire) et exclude
(optionnelle) pour spécifier quels fichiers appartiennent à quel framework. Fournissez un tableau de fichiers et/ou de dossiers à inclure
pour chaque framework que vous utilisez. Des caractères joker peuvent être utilisés pour inclure plusieurs chemins de fichiers.
Nous recommandons de placer les composants communs du framework dans le même dossier (par exemple /composants/react/
et /composants/solid/
) pour faciliter la spécification de vos inclusions, mais ce n’est pas obligatoire :
Exemples
Titre de la section Exemples- L’exemple Astro Preact montre comment utiliser un composant Preact interactif dans un projet Astro.
- L’exemple Astro Nanostores montre comment partager l’état entre différents composants — et même différents frameworks ! — dans un projet Astro.