Javascript 如何从父级调用ng view controller中的函数?

Javascript 如何从父级调用ng view controller中的函数?,javascript,angularjs,Javascript,Angularjs,从父控制器在ng视图中调用子控制器中的函数时遇到困难 目前,我的html有如下内容: <body ng-app="myApp" ng-controller="bodyController as bc" ng-init="bc.init()"> <ng-view><ng-view> </body> 我认为问题可能是视图控制器尚未加载,因此无法从中调用函数。因此,我尝试在其ng init上从视图控制器发出一个信号,父bodyController将

从父控制器在ng视图中调用子控制器中的函数时遇到困难

目前,我的html有如下内容:

<body ng-app="myApp" ng-controller="bodyController as bc" ng-init="bc.init()">
  <ng-view><ng-view>
</body>

我认为问题可能是视图控制器尚未加载,因此无法从中调用函数。因此,我尝试在其ng init上从视图控制器发出一个信号,父bodyController将听到该信号,然后广播回一个新信号,以便函数运行,但这也不起作用。我已经尝试在堆栈溢出中搜索了一段时间,但要么找不到相关的答案,要么答案让我不知所措。非常感谢您的帮助。

您好,据我所知,您不应该在controlelr方法签名中插入
$…
。我在角度思考方面还远远不是专家。请看这里:您可能必须使用$scope。$broadcast&$scope。$onlook谢谢Charlie!那很有帮助
app.controller('bodyController', bodyController);
app.controller('viewController', viewController);

function bodyController(){
  var vm = this;
  vm.init = function(){
    vm.$broadcast('load')
  }

function viewController(){
  var vm = this;
  vm.$on('load', functionToCall)
  }