如何从angularjs中的子控制器调用父控制器中的函数

问题描述 投票:0回答:2

这是我的UI代码

<div ng-controller="WorkFlowController" ng-init="init()">
  <div ng-controller="templatecontroller">
     <ul class="ng-scope" ng-click="child(1)"></ul>
 </div>
</div>

这是我在app.js中的脚本

这是我的父控制器

 app.controller("WorkFlowController",  function ($scope) {
  $scope.parentFuntion = function (TaskId) {
   };
 });

这是我的孩子控制器

 app.controller("templatecontroller",  function ($scope) {
 $scope.child = function (TaskId) {
 parentFuntion(TaskId);
};
  });

我的问题是,我在子控制器函数中获得了id,但是无法传递给父级。是否可以将id传递给子控制器的父控制器函数..?请帮帮我:)先谢谢你

angularjs
2个回答
0
投票

看看这个Stack Overflow Answer,它包含了很多很棒的信息。

使用$scope,您可以使用$parent属性访问父作用域,如下所示:

$scope.child = function (TaskId) {
    $scope.$parent.parentFuntion(TaskId);
}

0
投票

父控制器

app.controller("WorkFlowController", function ($scope) { 

$ rootScope.parentFuntion = function(TaskId){}; });

儿童控制器

app.controller("templatecontroller", function ($scope) { $scope.child = function (TaskId) { $rootScope.parentFuntion(TaskId); }; });
© www.soinside.com 2019 - 2024. All rights reserved.