0
define([], function() { 
    function myCtrl($scope,$http) 
    { 
     $scope.test = "Course Man"; 

    } 
    myCtrl.$inject=['$scope','$http']; 
    return myCtrl; 
}); 

我们有每个控制器的单独文件,并在需要时加载延迟。它们在application.js中有相应的条目。如何创建子控制器角Js

现在的问题是:

我需要2-3级儿童控制器上的所有链接到父控制器..而且大家都在一个单一的文件..,这样才能装..


尝试:

define([], function() { 
     function myCtrl($scope,$http) 
     { 
      $scope.test = "Course Man"; 

     } 

     function myCtrl1($scope,$http){}; 

     myCtrl.$inject=['$scope','$http']; 
     return myCtrl; 
    }); 

但是这么想的似乎是工作。

UPDATE ----

父 -

define([], function() { 
     function myCtrl($scope,$http) 
     { 
      $scope.test = "Course Man"; 

     } 
     myCtrl.$inject=['$scope','$http']; 
     return myCtrl; 
    }); 

与另一个控制器:

define([], function() { 
    function myCtrl($scope,$http) 
    { 
     $scope.test = "Course Man"; 

    } 
    return myCtrl; 
}); 

function myCtrl1($scope,$http){ 

}; 

这是工作..不知道他们HAV e亲子关系或不......困惑!

+0

你想做什么?您可以为孩子创建单独的控制器! – Aravind

+0

应用程序逻辑不允许单独的控制器..需要在同一个父控制器文件中创建一个子控制器.. –

+0

你可以将控制器嵌入父项,但是我的问题。请更新以获取更多信息.. 您想从父控制器重新使用的逻辑是什么? – Aravind

回答

-1

你可以走另一条路。

有可能扩展控制器或使单个控制器成为多个控制器的混合。

module.controller('CtrlChild', ['$scope', '$controller', function ($scope, $controller) { 
    // Initialize the super class and extend it. 
    angular.extend(this, $controller('CtrlParent', {$scope: $scope})); 
    … Additional extensions to create a mixin. 
}]); 
+0

你可以使用角度服务来做重复的逻辑,这是推荐的方式 – Aravind