【发布时间】:2016-06-23 12:44:02
【问题描述】:
我尝试在将数据从一个控制器发送到另一个控制器时调用函数
在 AngularJS 中。但它在 Angular v.1.2 中对我不起作用。我需要从ctrl2 调用ctrl1 函数。谁能给我一些关于这个问题的想法?
示例代码:
<div ng-contorller="ctrl">
<div ng-contorller="ctrl1">
</div>
<div ng-contorller="ctrl2">
</div>
</div>
function parentctrl(){
}
function ctrl1($scope){
$scope.callfn = function(){
console.log("success");
}
$scope.$on('emitdata', function(event, data){
$scope.callfn();
})
}
function ctrl2($scope){
$scope.$emit('emitdata', {'key':'uu'});
}
【问题讨论】:
-
您也应该发布您的标记。声明控制器的顺序很重要。您的代码没有明显的问题。
-
好的,我会检查这个
-
这完全取决于你的控制器是如何嵌套的。试试$rootScope.$emit(),这样行吗?
标签: javascript angularjs angularjs-scope