it-swarm.com.de

Erzählen Angular Js, um eine bestimmte Route zu ignorieren

Ich habe mein Routing in Angular eingerichtet und alles funktioniert gut:

$locationProvider.html5Mode(true);
$routeProvider.
      when('/', { templateUrl: '/Home/Index' }).
      when('/User', { templateUrl: '/User/Index' });

Ich habe jedoch jetzt ein Ankertag, um als Abmeldeschaltfläche zu fungieren, die den Benutzer lediglich zu/User/Logout umleitet. Bei der Abmeldung wird der Benutzer abgemeldet und zur Anmeldeseite weitergeleitet. Ich möchte also, dass der Winkel js diese bestimmte Route einfach ignoriert und eine normale http-Umleitung zulässt. Dies scheint etwas zu sein, das wirklich einfach sein sollte, aber ich konnte keine Lösung für das Problem finden. 

Ich weiß, ich könnte ein Klickereignis und eine Änderung im Fensterfenster ausführen. Das Klickereignis wird geändert, aber das scheint eine sehr harte Methode zu sein.

38
David Esteves

geben Sie in Ihren Ankern target="_self" an, damit die URLs nicht von anglejs neu geschrieben werden. Sehen Sie die Diskussion hier: http://docs.angularjs.org/guide/$location

102
akonsu

Sie können eine Funktion mit redirectTo auch verwenden:

 .when('/User/Logout', {
            redirectTo: function(obj,path,search) {
                window.location.href=path;
            }
        })
0
Nekudotayim