AngularJS自定义提供程序导致“未知提供程序”异常

ita*_*chi 2 javascript angularjs

我在AngularJS中创建了一个自定义提供程序,该应用程序应该是应用程序的全局配置。不幸的是,我无法注入该提供程序,因为AngularJS抛出“未知提供程序”异常。我完全不知道我的代码有什么问题。

app.js

(function () {
    'use strict';

    angular.module('app', [
        'config'
    ])
    .config(configuration);

    configuration.$inject = ['ConfigProvider'];

    function configuration(ConfigProvider) {
        ConfigProvider.setFoo(86400);
    }
})();
Run Code Online (Sandbox Code Playgroud)

config-provider.js

(function () {
    'use strict';

    angular.module('config')
        .provider('ConfigProvider', ConfigProvider);

    ConfigProvider.$inject = [];

    function ConfigProvider() {
        var config = [];

        var provider = {
            $get: $get,
            setFoo: setFoo,
        };

        return provider;

        function $get() {
            return {
                getConfig: function () {
                    return config;
                }
            };
        }

        function setFoo(foo) {
            config['foo'] = foo;
        }
    }
})();
Run Code Online (Sandbox Code Playgroud)

首先将config-provider.js加载到我的脚本文件中,但是更改顺序始终不会更改行为-仍然是“未知提供程序”。任何帮助将不胜感激。

Ale*_*ets 6

您应声明提供程序,后缀不带“ Provider”:

module.provider('Config', ConfigProvider);
Run Code Online (Sandbox Code Playgroud)