2. Aller plus loin avec SvelteKit
De même que pour Svelte, SvelteKit offre plein d'autres possibilités que nous n'avons pas eu le temps d'aborder.
En voici quelques unes que vous pouvez étudier de votre côté.
Cette liste n'est pas ordonnée.
Fonctions load
Nous avons étudié les fonctions load
des fichiers +page.server.ts
et +layout.server.ts
, mais
il est aussi possible d'en déclarer dans des fichiers +page.ts
ou +layout.ts
, ce qui leur permet
d'être aussi exécutées sur client. On les appelle fonctions load
universelles.
Nous avons également mentionné le fait qu'il était possible d'utiliser await parent()
, même cela
est généralement déconseillé.
Il est aussi possible de manipuler les headers au sein des load
.
Vous trouverez plus de détails sur tous ces sujets dans la documentation officielle.
Groupes de layout
Pour éviter de créer un étage à nos routes tout en permettant d'utiliser un layout commun, vous pouvez utiliser les groupes de layout.
Navigation
SvelteKit permet d'interagir avec la navigation entre pages. Apprenez-en plus ici et là
Paramètres de reste et optionnels
Le routing offre des possibilités assez poussées, notamment via les paramètres de reste, permettant de grouper plusieurs segments d'un path sous une seule variable, et les paramètres optionnels, rendant un segment de path optionnel.
Variables d'environnement
Les variables d'environnement sont un outil indispensable pour le déploiement en production.
SvelteKit propose plusieurs moyens de les rendre disponible dans votre application :
- variables statiques privées
- variables statiques publiques
- variables dynamiques privées
- variables dynamiques publiques
Autres hooks
On a vu le hook handle
permettant de réagir à toute requête arrivant sur
le serveur SvelteKit.
Il existe d'autres hooks pouvant être utiles pour gérer les
erreurs, les appels fetch
de serveur, etc.
Gestion des images
SvelteKit, via Vite, vous permet de prégénérer vos images sous différents formats afin d'alléger le poids de votre application en fonction des situations.
Transitions de pages
Il existe une API web – encore expérimentale – permettant d'animer les changements de page.
SvelteKit permet de s'en servir.
Packaging
Si, plutôt que de créer une application SvelteKit, vous souhaitez créer une librairie autour de Svelte – une librairie de composants par exemple –, SvelteKit vous permet également de packager efficacement votre code pour qu'il soit facilement consommable par d'autres personnes.