AngularJS Route Contrôleur De Pas De Rechargement
J'ai une question très simple AngularJS application qui a deux routes: les
#/search
#/results
Quand j'ai passer d'une voie à l'autre, tout fonctionne comme je l'avais prévu. Toutes les ressources qui sont nécessaires sont récupérées et le contenu s'affiche parfaitement.
Le problème est quand je naviguer à partir d'un itinéraire pour le même itinéraire (I. e., #/résultats #/résultats) absolument rien ne se passe. Je comprends à partir du navigateur du point de vue rien ne s'est passé, mais j'aimerais vraiment AngularJS pour recharger le contenu.
Ce doit être très facile, mais je suis de dessin blancs dans cette. Quelqu'un peut s'il vous plaît faire la lumière sur ce pour moi?
Merci,
Jon
- Comprenez-vous, que si vous rechargez votre page, votre angulaire de l'application sera juste un redémarrage?
- Le contrôleur devrait fonctionner à nouveau, comment en êtes-vous vos données?
- attendez, vous voulez dire, comme vous êtes juste de la barre d'adresse et appuyer sur la touche enter? Ou vous êtes réellement rafraîchissant? Ou en train de modifier le chemin d'une certaine manière?
- J'ai un lien sur ma page, qui dirige mon navigateur pour #/résultats depuis que je suis déjà là, le navigateur ne peut pas faire n'importe quoi. Mais je préfère attendre le routage de détecter et de re-charge de la route?
- Salut Andrey. Oui je me rends compte que le rechargement d'une page est une page de demande de redémarrer l'application. Je ne suis pas en train de recharger la page, mais seulement l'un itinéraire sans avoir à quitter et de revenir.
Vous devez vous connecter pour publier un commentaire.
Lorsque vous accédez à la même page, le navigateur l'ignore.
Angular.js n'a rien à voir avec le comportement par défaut de
<a href="">
.Ce que vous pouvez faire est de créer un personnalisé directive qui:
$route.reload()
pour recharger la vue actuelle (par la route).$location.path(newPath)
pour accéder à d'autres points de vue.J'ai fait un exemple:
À votre avis, il suffit de créer:
Vous pouvez vérifier si le trajet est le même que la "destination" de l'itinéraire et de l'appel
$route
'sreload()
méthode:E. g.:
En HTML:
Dans le contrôleur:
ngRoute
module en tant que dépendance de votre application. Tout ce dont vous avez besoin est dans le thw docs.J'ai utilisé le routeparams propriété ainsi de comparer les paramètres de l'url et cela a fonctionné comme un charme. Dans le cas où quelqu'un est confronté à ce problème, voici comment j'ai résolu: