我对angular的研究还很陌生,并且一直在构建一个简单的CRM应用程序。对于单个资源(restful API资源),我在我的角度应用程序中定义了3-4个路由和控制器。现在,我需要反复向每个控制器注入一组服务和模块。我知道每个控制器都有它自己的范围实例和工厂/服务的共享实例,但有没有一种方法可以集中定义多个控制器的依赖关系?Angularjs - 向多个控制器注入依赖关系
在下面的示例中,$modal
,growl
,configuration
,$scope
被注入到所有3个控制器中,我只想定义一次。
房源控制器
myApp.controller('VenueListCtrl', ['$scope', '$http', 'configuration', '$modal', 'growl',
function ($scope, $http, configuration, $modal, growl) {
}
]);
创建/新控制器
myApp.controller('VenueCreateCtrl', ['$scope', '$http', '$location', 'configuration',
function ($scope, $http, $location, configuration) {
}
]);
详情控制器
myApp.controller('VenueDetailCtrl', ['$scope', '$routeParams', '$http', '$modal', 'configuration',
function ($scope, $routeParams, $http, $modal, configuration) {
}
]);
也许你可以创建一个依赖于这些事情的服务并公开所需的行为。那么控制器将仅依赖于该服务。请记住,这不适用于'$ scope',因为它对每个控制器都是本地的。 – 2014-12-04 08:31:44
@NikosParaskevopoulos我想到了这一点,但事实是每个控制器都以不同的方式使用服务/工厂。单独包含它们的模块化是非常有用的,但我希望能够在组装我的应用程序时对模块进行分组:( – 2014-12-04 09:36:13