Inertia.js gère la gestion de l'état dans une application monopage en exploitant les fonctionnalités de réactivité du framework frontend (Vue.js, React ou Svelte) utilisé pour créer l'application. Voici les points clés sur la façon dont Inertia.js gère l'état :
1. Composants réactifs : Inertia.js utilise des composants réactifs pour gérer l'état. Ces composants sont conçus pour se mettre à jour automatiquement lorsque l'état change, garantissant ainsi que l'interface utilisateur reflète l'état actuel.
2. Props : Inertia.js utilise des accessoires pour transmettre les données du serveur au client. Les accessoires sont utilisés pour définir l'état initial de l'application et peuvent être mis à jour dynamiquement à mesure que l'application interagit avec le serveur.
3. Gestion de l'état : Inertia.js ne nécessite pas de bibliothèque de gestion d'état distincte comme Redux ou Vuex. Au lieu de cela, il s'appuie sur les fonctionnalités de réactivité du framework frontend pour gérer l'état. Cette approche simplifie la gestion de l'état et élimine le besoin de bibliothèques supplémentaires.
4. Rendu côté serveur : Inertia.js prend en charge le rendu côté serveur, ce qui lui permet de pré-rendre la page initiale et d'envoyer le HTML au client. Cette approche garantit que la page initiale est entièrement rendue sur le serveur, ce qui la rend conviviale pour le référencement.
5. Rechargements partiels : Inertia.js fournit des rechargements partiels, qui lui permettent de recharger uniquement les composants nécessaires sur la page au lieu de la page entière. Cette fonctionnalité améliore les performances en réduisant la quantité de données à extraire du serveur.
6. Redirections externes : Inertia.js prend en charge les redirections externes, qui lui permettent de rediriger vers des URL externes ou d'autres points de terminaison non Inertia dans l'application. Cette fonctionnalité est utile pour gérer les redirections qui ne sont pas gérées par Inertia.js.
7. Composant Head : Inertia.js fournit un composant « Head » qui permet aux développeurs d'ajouter des balises méta et d'autres éléments head à la page. Cette fonctionnalité est utile pour le référencement et à d’autres fins.
8. Mise en page persistante : Inertia.js prend en charge les mises en page persistantes, qui permettent aux développeurs de conserver l'état de la mise en page entre les visites de pages. Cette fonctionnalité est utile pour les applications qui nécessitent un état de mise en page persistant, comme le maintien de la position de défilement dans une barre de navigation latérale.
En tirant parti des fonctionnalités de réactivité du framework frontend et en utilisant des accessoires pour transmettre les données du serveur, Inertia.js simplifie la gestion de l'état dans les applications monopage.
Citations :[1] https://inertiajs.com/who-is-it-for
[2] https://inertiajs.com
[3] https://kinsta.com/knowledgebase/inertia-js/
[4] https://inertiajs.com/pages
[5] https://www.youtube.com/watch?v=JZDmBWRPWlw