AngularJs在调用函数时广播重复执行次数太多次

时间:2015-08-10 13:13:08

标签: angularjs angularjs-directive angularjs-scope

Angular JS

unified.controller('YourteamController', function uniYourteamController($scope) {    
    $scope.$on('selectchange', function() { 
        alert("Child controller");
    });
});    

unified.controller('testController', function testController($scope) {
    $scope.changeTeam = function(value){
            $scope.$broadcast('selectchange');
    };    
});

这里我可以从父控制器调用一个函数。但它执行该功能3次。如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

有基于事件的方式来了解路线何时发生变化。您可以挂钩ngRouter广播的任何事件:

$scope.$on('$routeChangeStart', function(next, current) { 
   // Your code
});

$scope.$on('$routeChangeSuccess', function(next, current) { 
   // Your code
});

$scope.$on('$routeChangeError', function(next, current) { 
   // Your code
});