Découvrez comment migrer progressivement votre projet Angular existant vers les dernières fonctionnalités.
Standalone
Les composants standalone offrent une façon simplifiée de construire des applications Angular. Les composants standalone déclarent leurs dépendances directement au lieu de les obtenir via des NgModules.
Syntaxe du control flow
La syntaxe intégrée du control flow vous permet d'utiliser une syntaxe plus ergonomique, proche de JavaScript, avec une meilleure vérification de types. Elle évite d'avoir à importer CommonModule pour utiliser des fonctionnalités comme *ngFor, *ngIf et *ngSwitch.
Fonction inject()
La fonction inject d'Angular offre des types plus précis et une meilleure compatibilité avec les décorateurs standards que l'injection par constructeur.
Routes en lazy loading
Convertissez les routes de composants chargées immédiatement en routes chargées en lazy loading. Le processus de build peut ainsi découper les bundles de production en chunks plus petits, pour charger moins de JavaScript au chargement initial de la page.
Nouvelle API input()
Convertissez les champs @Input existants vers la nouvelle API des inputs signal, désormais prête pour la production.
Nouvelle fonction output()
Convertissez les événements personnalisés @Output existants vers la nouvelle fonction output, désormais prête pour la production.
Queries signal
Convertissez les champs de query existants basés sur des décorateurs vers l'API améliorée des queries signal. L'API est désormais prête pour la production.
Nettoyer les imports inutilisés
Nettoyez les imports inutilisés de votre projet.
Balises auto-fermantes
Convertissez les templates des composants pour utiliser des balises auto-fermantes quand c'est possible.
De NgClass aux class bindings
Convertissez les templates des composants pour privilégier les class bindings plutôt que la directive NgClass quand c'est possible.
De NgStyle aux style bindings
Convertissez les templates des composants pour privilégier les style bindings plutôt que la directive NgStyle quand c'est possible.
Migration de RouterTestingModule
Convertissez les utilisations de RouterTestingModule en RouterModule dans les configurations du TestBed et ajoutez provideLocationMocks() si nécessaire.
De CommonModule aux imports standalone
Remplacez les imports de CommonModule par des imports des directives et pipes individuels utilisés dans les templates quand c'est possible.
De Injectable à Service
Convertissez les classes @Injectable éligibles vers le décorateur @Service.