我正在学习angular1,我遇到了服务和工厂。我通过传入表示所需服务名称的字符串来调用.factory()
方法,如下所示。我后来能够引用一个与字符串名称相同的变量,但我从未真正创建过该变量。有谁知道为什么会这样?我想这与依赖注入有关,但我无法理解angular / js实现这种自动变量创建的机制。
app.factory('myData', function() {
return {...}
}
app.controller('MyController',
function MyController($scope, myData) {
...
}
);
答案 0 :(得分:0)
服务和工厂是Angular中的单例,并通过依赖注入模式进行实例化,它们的引用由角度核心运行时解析。
这意味着开发人员不负责直接管理引用,当执行控制器时,引用了引用,您可以相应地使用它们。
app.controller('MyController',
function MyController($scope, myData) {
...
}
);