Routing avancé
Objectifs de ce chapitre
- ✔️Routing avancéApprenez à utiliser le routing avancé dans une application Angular.
Dans la dernière étape, vous avez testé le formulaire avec ce scénario :
- Cliquez sur le lien
Ajoutez une nouvelle tâche
- Saisissez un titre et une description dans le formulaire
- Cliquez sur le bouton
Créer une tâche
- Cliquez sur le lien
Liste des tâches
Mais que se passe-t-il si l’on souhaite rediriger l’utilisateur vers la liste des tâches après la soumission du formulaire ? C’est un scénario courant dans les applications Web et Angular fournit un moyen de le faire.
Vous avez vu comment déclencher une navigation en cliquant sur un lien avec la directive routerLink. Mais dans cette situation, vous allez déclencher une navigation lorsque la fonction submit est appelée.
Injectez le Router
Vos propres services personnalisés ne sont pas les seuls éléments que vous pouvez injecter dans le constructeur d’un composant. En utilisant la fonctionnalité Angular Router, vous pouvez injecter le service Router dans un composant.
Ce service vous permet de récupérer des informations sur la route actuelle et vous permet de naviguer vers une route différente.
🎓 Instructions
-
Modifiez le fichier
src/app/task-form.component.ts
.
La fonction de navigation attend un tableau de segments de routes en tant que paramètre.
Dans notre cas, vous allez naviguer vers la route tasks telle que vous l’avez défini dans votre configuration de route. Vous transmettez donc ['/tasks']
.
Testez-le
Maintenant, si vous répétez le scénario précédent :
- Cliquez sur le lien
Ajoutez une nouvelle tâche
- Saisissez un titre et une description dans le formulaire
- Cliquez sur le bouton
Créer une tâche
Vous devriez être redirigé vers la liste des tâches.
✔️ Ce que vous avez appris
Dans ce chapitre, vous avez appris à utiliser le routage programmatique dans une application Angular. Vous avez appris à injecter le service Router dans un composant et à utiliser sa fonction navigate pour naviguer vers un itinéraire différent.