Verwirrend $locationChangeSuccess und $stateChangeStart

Ich versuche zu tun, einige Authentifizierung mit AngularUI-Router. $urlRouter.sync() sieht aus wie genau das was ich brauche. Das ist jedoch nur verfügbar, wenn ich abfangen $locationChangeSuccess. Aber wenn ich das Tue, ist $state.current.name leer ist, während ich möchte, dass es den aktuellen Stand.

Hier mein code bisher:

$rootScope.$on('$locationChangeSuccess', function(event, next, nextParams) {
  event.preventDefault();
  if ($state.current.name === 'login') {
    return userService.isAuthenticated().then(function(response) {
      var authenticated;
      authenticated = response.authenticated;
      return alert(authenticated);
    });
  }
});

Irgendwelche Hinweise, was ich falsch mache?

Err... Was $stateChangeSuccess?
Dann kann ich nicht verwenden urlRouter.sync()
$state.current.name nur leer auf der ersten Seite zu laden. Alle Zustandsänderungen ausgelöst, nachdem ein Staat Namen. Wenn alles, was Sie tun müssen, ist die Authentifizierung erzwingen, dann hören Sie auf $stateChangeStart - Sie brauchen nicht zu befürchten $urlRouter.sync(). Es gibt viele Beispiele um zu demonstrieren, dass.
Können Sie teilen, was ist die Anforderung??
viele Beispiele um zu demonstrieren, dass." wo?

InformationsquelleAutor Shamoon | 2014-09-16

Schreibe einen Kommentar