Moderné webové technológie 12 - Angular
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška z Moderných webových technológií rozoberá route guard CanDeactivate v Angulari, ktorý na rozdiel od CanActivate rozhoduje, či môže používateľ opustiť už aktivovanú rutu a rozrobený formulár. Vytvára sa všeobecné riešenie pomocou rozhrania definujúceho metódu canDeactivate, ktoré musí implementovať konkrétny komponent (napríklad UserEditComponent), čím stačí jeden univerzálny guard pre všetky komponenty. Guard sa najprv nastaví defenzívne (vždy vráti false), následne sa rozhodovanie naviaže na stav formulára pomocou reaktívneho modelu a jeho vlastnosti dirty. Napokon sa rieši prípad, keď je formulár po uložení stále označený ako zmenený, pomocou pomocnej premennej userSaved, ktorá umožní odchod z komponentu po úspešnom uložení dát.
- Route guard CanDeactivate a rozdiel oproti CanActivate
- Generické rozhranie CanDeactivateComponent
- Implementácia metódy canDeactivate v komponente (UserEditComponent)
- Generovanie guarda príkazom ng generate guard
- Zisťovanie zmien formulára cez vlastnosť dirty reaktívneho modelu
- Nastavenie guarda v konfigurácii routy
- Pomocná premenná userSaved po úspešnom uložení dát
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky