0

したがって、ルーティングエラーを処理するための次の関数があります。

angular.module('player-tracker').run(['$rootScope', '$location', function($rootScope, $state) {
    $rootScope.$on('$stateChangeError', function(event, toState, toParams, fromState, fromParams, rejection) {
      if (rejection === 'AUTH_REQUIRED') {
        $state.go("/home");
      }

   });
}]);

超複雑ではありません、私は知っています。

しかし、実行するたびに、$state.go メソッドが未定義として戻ってくるという問題が発生します。何か不足していますか?

4

1 に答える 1

0

$state を明示的に注入する場合は、後者だけでなく、配列と関数の引数の両方に含める必要があります。

angular.module('player-tracker').run(['$rootScope', '$state', function($rootScope, $state) {
    $rootScope.$on('$stateChangeError', function(event, toState, toParams, fromState, fromParams, rejection) {
      if (rejection === 'AUTH_REQUIRED') {
        $state.go("/home");
      }

   });
}]);
于 2015-08-30T02:11:02.050 に答える