2016-10-17 10 views
1

私は現在の状態の名前を返す必要があり、工場を作成したいが、私はコントローラ内部で、このコードを試してみました:

$rootScope.$on('$stateChangeStart', function (e, toState, toParams, fromState, fromParams) { 
    $rootScope.tabName = fromState.name;   
}); 

が、この情報は特定のコントローラが呼び出された場合にのみ使用できます私はこの情報をプロジェクト全体で利用可能にしたいと思っています。

答えて

0

これは別の方法で行うことができます。

angular.module('app') 
.run(['$state', '$cookies', '$rootScope', function($state, $cookies, $rootScope) { 
    $rootScope.$on('$stateChangeStart', function(e, toState, toParams, fromState, fromParams) { 

     $rootScope.tabName = fromState.name;  
    }); 
}); 

コントローラに入れるのではなく、アプリケーションの初期化時に呼び出されるモジュールのrunメソッドで使用します。

関連する問題