Angularjs - 函数在第一次调用后启动递归调用

时间:2016-05-27 07:52:34

标签: angularjs

当我第一次开始递归调用它时,我在控制器中有一个带根范围的函数。

任何帮助Plz。

$rootScope.getWord = function(key){
    console.log('in get work fucntion key: '+key);
    if(angular.isDefined($rootScope.lang[key])){
        return $rootScope.lang[key];
    } 
    else {
        return key;
    }
}

2 个答案:

答案 0 :(得分:0)

如果你真的想使用,请避免在角度使用rootcope,然后按照这种方式使用。

将此视为A.js

 var title = "Company";
     $rootScope.$broadcast('changepanelTitle', title);

所以现在这个标题你将在不同的控制器中使用,考虑这是B.js

 $scope.$on('changepanelTitle', function(event, title) {
         $scope.paneltitle = title;
    });

答案 1 :(得分:0)

最后我发现了这个问题。我的一个指令是在settimeout之后的某个时间间隔之后调用的。因此,再次检查是否有任何变化。这就是为什么我的函数被递归调用的原因。现在我已经更改了settimeout指令并且其工作正常。