2016-05-06 5 views
1

ich ein kleines Problem mit der Komponente Router für Winkel 1 haben, wenn ich versuche, auf eine andere Komponente von $ routerOnActivate lifecyle Haken zu umleiten/navigieren, ich bin immer in eine Endlosschleife von Weiterleitungen von der aktuellen Komponente zur gewünschten Komponente. Im besten Fall ist das Szenario nicht unendlich, aber es wird mehrfach zwischen diesen beiden Pfaden umgeleitet. Was ich versuche zu tun, dass, wenn etwas schief geht, enter code here Ich möchte meine Homepage gehen. Also im Grunde so etwas wie ich versuche zu tun:Angular 1 Component-Router von OnActivate lifecyle Haken umleiten

this.$routerOnActivate =() => { 
     this.$router.navigate(["abcd"] 
} 

Wenn ich die navigate Aktion in eine SetTimeout mit 100 Verzögerung zum Beispiel Wickel, es funktioniert gut, aber für mein Szenario ist dies keine gute Idee Ursache Die App ist wirklich faul am Rand oder IE und dort werden 100 Millisekunden nicht ausreichen.

Können Sie mir bitte helfen mit einer Idee?

Antwort

0

$ timeout ist der einzige Weg, die ich gefunden habe dies bisher zu tun.

this.$routerOnActivate =() => { 
    $timeout(this.$router.navigate.bind(this.$router, ["abcd"])) 
    return $q.reject() // stops the current route 
}