2017-03-16 15 views
0

私は角度ui-routerを使用しています。 私は次の構造を持っている:私は「EVENT1」イベントをブロードキャストし、その状態ABに解決していると私はparentA上のリスナーを持っている

  • 状態コントローラparentA
  • 状態ABコントローラchildB

をコントローラ。

ログインすると正常に動作します。しかしその後のブラウザのリフレッシュでは、イベントがブロードキャストされているのを見ることができますが、リスナーは機能していません。

ご協力いただきましてありがとうございます。

答えて

0

はマイトこのコードは、ビュー間を行き来するときは、

$scope.$on('$viewContentLoaded', onLoaded); 
$scope.$on('viewContentLoadComplete', onLoadComplete); 

$rootScope.$on('$stateChangeStart', 
    function (event, toState, toParams, fromState, fromParams) { 
     $scope.isViewLoading = true; 
    }); 

$rootScope.$on('$stateChangeSuccess', 
    function(event, toState, toParams, fromState, fromParams) { 
     $scope.isViewLoading = false; 
    }); 

function onLoaded() { 
    $scope.isViewLoading = true; 
    $scope.$broadcast('viewContentLoadComplete'); 
} 

function onLoadComplete() { 
    $scope.isViewLoading = false; 
} 

それ親または子あなたはいつもつもり秋はあなたが望むの低いものを扱うことができ、この状態であることができます。

これよりも優れたコードも簡単な説明とともに歓迎します。

メインコントローラでこれを定義できます。ここで$ scope.isViewLoadingは表示されずにローダーとして表示されるように設定されたgif画像です。

関連する問題