Dans ma candidature, j'ai un composant de détails de l'employé et une URL ressemble à Ça fonctionne parfaitement et page navigue sur le composant requis (liste des employés). Mais il garde l'identifiant de l'employé 123 sur l'URL qui ne devrait réellement pas être et devrait ressembler à http: // localhost: 4200 / employé / 123 code>
À partir de là, lorsque je clique sur le bouton pour revenir, j'ai utilisé
http: // localhost: 4200 / employé / code>. Comment puis-je le faire correctement. P> p>
3 Réponses :
vous pouvez donner
this.router.navigater (['../'], {QueryParams: '' Relativeto: this.route}); code>
ou alors
this.router.navigater (['Employee'], {QueryParams: ''}); Code> P>
Désolé de ne pas mentionner en question mais je dois passer des paramètres à la composante requise. Alors ne peut pas supprimer QueryParams.
Les QueryParams ne devraient pas être le problème, car l'identifiant d'employé est un paramètre dans l'itinéraire et non un QueryParam. Mais en utilisant relatianting, utiliser Just '/' ne ferait rien. Vous devez utiliser quelque chose comme celui-ci .Router.Navigate (['..//'], {Relativeto: this.route}); S'il vous plaît voir le lien dans le commentaire sous votre question. Une question similaire a été posée et a répondu auparavant.
@Erbsenkoenig exactement. Mise à jour de ma réponse.
Avez-vous essayé d'utiliser ['../'] au lieu de ['/'] comme premier paramètre pour l'appel de navigation?
oui j'ai essayé avec ['../'] aussi mais le résultat était le même, c'est-à-dire de naviguer avec succès, mais l'URL ne change pas
Pouvez-vous poster votre configuration de route
Je pense que le problème est le chantlocalisationChanger. Documentation indique les éléments suivants: p>
SkiplocalisationChanges: navigue sans pousser un nouvel état dans l'historique. P> blockQuote>
C'est exactement ce que vous vivez, je pense: la navigation fonctionne mais votre itinéraire ne change pas. S'il vous plaît supprimer le skilocalisationChanger. P>
Voir cette question ici : la solution consistait à utiliser SkipLocationChanges pour naviguer à Localhost / Toile sans afficher «Canvas» dans l'URL. Vous voulez le contraire exact. Je pense donc à utiliser SkipLocalisationChanges: True est la chose que vous ne voulez pas utiliser. P>
Eh bien, j'ai résolu mon problème du lien suivant https://angularfirebase.com/lessons/shaning-data -between-composants angulaires-quatre-méthodes / p>
Il aide à transférer des données entre les pages à l'aide de services a) Parent à l'enfant b) enfant au parent c) frère à parent p>
Je pense que l'utilisation de l'apporach relativeto en combinaison avec '/' pourrait être le problème ici. Utilisation de la navigation relative Voici un look ici , sinon, en utilisant un routage absolu, une navigation sur ['/ employé] devrait également fonctionner.
Et votre skilocalisationChanger, je n'ai pas utilisé cela avant, mais la documentation indique qu'il naviguera silencieusement, je ne sais pas si cela signifie que votre trajet ne change pas, mais vous serez navigué. Avez-vous essayé de naviguer sans lishlocationChanger?