Angular工厂服务变量创建机制

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

我正在学习angular1,我遇到了服务和工厂。我通过传入表示所需服务名称的字符串来调用.factory()方法,如下所示。我后来能够引用一个与字符串名称相同的变量,但我从未真正创建过该变量。有谁知道为什么会这样?我想这与依赖注入有关,但我无法理解angular / js实现这种自动变量创建的机制。

app.factory('myData', function() {
    return {...}
}

app.controller('MyController',
    function MyController($scope, myData) {
        ...
    }
);
javascript angularjs variables service factory
1个回答
0
投票

服务和工厂是Angular中的单例,并通过依赖注入模式进行实例化,它们的引用通过angular的核心来解析运行时。

这意味着开发人员不负责直接管理引用,当执行控制器时,注入引用,您可以相应地使用它们。

app.controller('MyController',
    function MyController($scope, myData) {
        ...
    }
);

服务文档:https://docs.angularjs.org/guide/services

依赖注入:https://en.wikipedia.org/wiki/Dependency_injection

© www.soinside.com 2019 - 2024. All rights reserved.