angularjs $état et $rootScope.$sur($stateChangeStart) question

J'ai passé par une multitude de questions, mais je n'ai pas trouver une solution.

J'ai un problème avec les états de la manipulation.

$urlRouterProvider.otherwise( function($injector, $location) {
    var $state = $injector.get("$state");
    $state.go("cover");
});

$stateProvider
    .state('auth', {
        url: '/auth',
        templateUrl: '../views/authView.html',
        controller: 'AuthController as auth'
    })
    .state('users', {
        url: '/users',
        templateUrl: '../views/userView.html',
        controller: 'UserController as user'
    })
....

cette façon de routage fonctionne dans mon application.

app.run(function($rootScope, $state, $location) {
    $rootScope.$on('$stateChangeStart', function(event, toState, fromState) {

        //ERROR IS IN THIS BLOCK
        if($rootScope.authenticated && $rootScope.onboard == 0) {

            //event.preventDefault();

            $state.transitionTo("onboard", null, {notify:false});
            $state.go('onboard');
        }
...

Chaque fois que je changer mon itinéraire, qui bloquent les feux des centaines de fois, mais je veux simplement vérifier si l'utilisateur est authentifié et complété certaines formes ou pas et si pas de rediriger simplement à la forme elle-même.

J'ai essayé différentes manières avec preventDefault(); ou sans, même problème.

OriginalL'auteur user3581552 | 2015-09-20