为什么我无法使用$ inject.get访问使用$ provide.provider创建的服务

时间:2015-03-12 08:55:31

标签: javascript angularjs

function configure($provide, $injector) {

    $provide.provider("testservice", function () {
       this.$get = function () {
         this.property = 777;
       };
    });

    var s = $injector.get("testservice");

最后一行抛出此错误:

Unknown provider: testservice

为什么会这样?

1 个答案:

答案 0 :(得分:2)

要在配置阶段访问提供,我们需要附加提供商'到提供者的名称。

module.config(function ($provide, $injector) {
    $provide.provider("testservice", function () {
        this.$get = function () {
            this.property = 777;
        };
    });

    var s = $injector.get("testserviceProvider");
    console.log(s)
});