Introduction et rappels sur Angular
Présentation de la formation
Retour sur les grands principes de développement avec Angular : composants, formulaires, routing…
La programmation réactive : RxJS et Angular
Les opérateurs
Les Observables (design pattern Observer)
Gestion des subscriptions
Gestion des erreurs
Utilisation des promesses, l’approche async/await
Comprendre les Subjects : BehaviourSubject, AsyncSubject, ReplaySubject
Zone.js
Booster les performances d’Angular avec OnPush (cycle de détection de changement)
Outils et meilleures pratiques pour les tests unitaires
Utiliser Karma et Jasmine pour les tests unitaires
Tester un composant, un service
Test et injection de dépendances, http, mock et code asynchrone
Formulaires
Formulaires dynamiques avec Reactive Forms
Les classes FormControl, FormGroup, AbstractControl…
Implémenter des validators asynchrones
L’interface CVA ControlValueAccessor
Routing
Configurer le Lazy Loading
PreloadAllModules : stratégie de preloading
Décomposer une application en modules
Les Route Guards
Protéger l’accès à une route avec CanActivate, CanActivateChild
Sécuriser la sortie d’une route avec CanDeactivate
La librairie NgRx
La théorie autour de NgRx : store, component, reducers, effects…
Pourquoi et dans quels cas l’utiliser ?
Installation
Création d’un store
Mise en place du reducer
Développement du selector
Création d’actions avec les effects
NGXS
Concepts fondamentaux : store, actions, state et selects
Création d’un store
Création et déclenchement d’actions