2017-03-16 96 views
0

我正在使用角度ui路由器。 我有以下结构:

  • 状态控制器parentA
  • 状态AB控制器childB

上状态AB我有一个解决了广播事件“事件1”和我对parentA收听者控制器。

当我登录时,它工作正常。但在随后的浏览器刷新中,我可以看到正在播放的事件,但听众无法正常工作。

任何帮助表示赞赏!

回答

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图像。