Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何从父控制器传递子控制器上的函数调用并传递参数?_Angularjs - Fatal编程技术网

Angularjs 如何从父控制器传递子控制器上的函数调用并传递参数?

Angularjs 如何从父控制器传递子控制器上的函数调用并传递参数?,angularjs,Angularjs,我有一个HTML页面和一个父控制器: <a data-ng-click="callChild('x')"></a> $scope.callChild = function (task) { } $scope.callChild=函数(任务){ } 我如何使其在单击链接时调用函数callChild 在子控制器中执行,并将参数传递给子控制器函数?父控制器可以使用$broadcast通知子控制器 以下是一些例子: HTML <div ng-controller=

我有一个HTML页面和一个父控制器:

<a data-ng-click="callChild('x')"></a>

$scope.callChild = function (task) {

}

$scope.callChild=函数(任务){
}
我如何使其在单击链接时调用函数callChild
在子控制器中执行,并将参数传递给子控制器函数?

父控制器可以使用
$broadcast
通知子控制器

以下是一些例子:

HTML

<div ng-controller="ParentCtrl">
    
    <a data-ng-click="callChild('x')">Click me</a>
    
    <div ng-controller="ChildCtrl">            
      
    </div>
</div>
参考文献

$broadcast--将事件向下分派到所有子作用域

$emit——通过作用域层次结构向上调度事件


请问,“儿童控制器”是什么意思?
var fessmodule = angular.module('myModule', []);

function ParentCtrl($scope, $timeout) {    
  
     $scope.callChild = function (val) {
       $scope.$broadcast('someEvent', val);
    };
}

function ChildCtrl($scope) { 
    $scope.$on('someEvent', function (event, val) {
        alert('from child ' + val);
    });
}