Inertia.js se stará o správu stavu v jednostránkové aplikaci využitím funkcí reaktivity rozhraní frontend (Vue.js, React nebo Svelte), které se používají k sestavení aplikace. Zde jsou klíčové body, jak Inertia.js spravuje stav:
1. Reaktivní komponenty: Inertia.js používá ke správě stavu reaktivní komponenty. Tyto komponenty jsou navrženy tak, aby se automaticky aktualizovaly, když se stav změní, čímž je zajištěno, že uživatelské rozhraní odráží aktuální stav.
2. Rekvizity: Inertia.js používá rekvizity k předávání dat ze serveru klientovi. Podpěry se používají k nastavení počátečního stavu aplikace a lze je dynamicky aktualizovat při interakci aplikace se serverem.
3. Správa stavu: Inertia.js nevyžaduje samostatnou knihovnu správy stavu jako Redux nebo Vuex. Místo toho se při řízení stavu spoléhá na funkce reaktivity frontendového rámce. Tento přístup zjednodušuje správu státu a eliminuje potřebu dalších knihoven.
4. Vykreslování na straně serveru: Inertia.js podporuje vykreslování na straně serveru, což umožňuje předběžně vykreslit úvodní stránku a odeslat HTML klientovi. Tento přístup zajišťuje, že úvodní stránka je plně vykreslena na serveru, takže je vhodná pro SEO.
5. Částečné opětovné načtení: Inertia.js poskytuje částečné načtení, které umožňuje znovu načíst pouze nezbytné součásti na stránce namísto celé stránky. Tato funkce zlepšuje výkon snížením množství dat, která je třeba načíst ze serveru.
6. Externí přesměrování: Inertia.js podporuje externí přesměrování, která mu umožňují přesměrovat na externí adresy URL nebo jiné koncové body aplikace, které nejsou inertia. Tato funkce je užitečná pro zpracování přesměrování, které nezpracovává Inertia.js.
7. Komponenta Head: Inertia.js poskytuje komponentu „Head“, která umožňuje vývojářům přidávat na stránku meta tagy a další prvky hlavy. Tato funkce je užitečná pro SEO a další účely.
8. Persistent Layouts: Inertia.js podporuje trvalá rozložení, která umožňují vývojářům udržovat stav rozložení mezi návštěvami stránky. Tato funkce je užitečná pro aplikace, které vyžadují trvalý stav rozvržení, jako je udržování pozice posouvání v navigaci na postranním panelu.
Využitím funkcí reaktivity frontendového rámce a použitím rekvizit k předávání dat ze serveru Inertia.js zjednodušuje správu stavu v jednostránkových aplikacích.
Citace:[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