var app = angular.module("myApp", []);
app.factory("one", function() {});
app.factory("two", function() {});
app.factory("three", function() {});
app.factory("four", function() {});
app.factory("five", function() {});
app.controller("myController", function($scope, one, two, three, four, five)
{
});
有没有一种方法可以一次性注入这些依赖项,而不是将5个服务累积地注入控制器?
假设我的角度应用程序中有50多个服务/工厂如何将所有这些注入我的控制器?
答案 0 :(得分:0)
以上所有评论都是好点。重点是,如果您的控制器有50个依赖项,则需要重新考虑您的架构。
那就是说,你已经要求注入依赖关系的替代方法,所以这是一个解决方案。
使用这种机制,理论上可以注入任意数量的依赖项,然后通过控制器中的arguments
集合访问它们。
这是一个可怕的想法。
var Controller = function () {
console.log(arguments[0]) // $scope
};
Controller.$inject = ['$scope', 'one', 'two', 'three'];
以下是一个有效的例子:http://jsfiddle.net/r9qf6arw/