Mettre en place des redirections
Lorsque l'application est lancée, l'URL initiale dans la barre de navigation ressemble à ceci:
Cela ne correspond à aucune des routes configurées de manière concrète, ce qui signifie que le routeur passe à la route générique et affiche l'icône PageNotFoundComponent.
L'application a besoin d'une route par défaut vers une page valide. La page par défaut pour cette application est la liste des héros.
L'application doit y accéder comme si l'utilisateur cliquait sur le lien "Héros" ou était collé localhost:4200/heroesdans la barre d'adresse.
La solution recommandée consiste à ajouter un redirectitinéraire traduisant l'URL relative initiale ( '') en chemin par défaut souhaité ( /heroes).
La barre d'adresse du navigateur indique .../heroesque vous y aviez navigué directement.
Ajoutez la route par défaut quelque part au - dessus de la route générique. C'est juste au-dessus de la route générique dans l'extrait suivant montrant la complète appRoutespour ce jalon.
app-routing.module.ts (appRoutes)
Une route de redirection nécessite une pathMatchpropriété indiquant au routeur comment faire correspondre une URL au chemin d'une route.
Le routeur génère une erreur si vous ne le faites pas. Dans cette application, le routeur doit sélectionner la route à la HeroListComponentseule
lorsque l' URL complète correspond '', pour définir la pathMatchvaleur .'full'
Techniquement, un itinéraire est touché lorsque les segments restants de l'URL non appariés correspondent.
Dans cet exemple, la redirection se trouve dans une route de niveau supérieur, de sorte que l' URL restante et l' URL complète sont identiques.pathMatch = 'full'''
L'autre pathMatchvaleur possible est celle 'prefix'qui indique au routeur de faire correspondre la route
de redirection lorsque l' URL restante commence par le chemin de préfixe de la route de redirection.
Ne fais pas ça ici. Si la pathMatchvaleur était 'prefix', chaque URL correspondrait ''.
Essayez de le configurer pour 'prefix'cliquer ensuite sur le Go to sidekicksbouton. Rappelez-vous que c'est une mauvaise URL
et vous devriez voir la page "Page introuvable". Au lieu de cela, vous êtes toujours sur la page "Heroes". Entrez une mauvaise
URL dans la barre d'adresse du navigateur. Vous êtes instantanément redirigé vers /heroes. Chaque URL, bonne ou mauvaise,
qui correspond à cette définition de route sera une correspondance.
La route par défaut doit être redirigé vers le HeroListComponent seul lorsque l' URL complète est ''.
N'oubliez pas de restaurer la redirection vers .pathMatch = 'full'