Angularjs 如何提供.config函数来配置我的库

Angularjs 如何提供.config函数来配置我的库,angularjs,angularjs-scope,Angularjs,Angularjs Scope,我为angular js制作了一个小的代码库。我在我的库的主模块中创建了一个.config方法,该方法依赖于我的moduleConfigProvider。我希望库的使用者在app.config阶段(app start时尽快)调用我的配置提供程序上的.configure 问题是模块中的my.config似乎在主应用程序模块的app.config之前运行。我如何解决这个问题 e、 这就是我使用配置的方式。我需要在.config阶段使用它,因为我需要配置$httpProvider之类的东西 // th

我为angular js制作了一个小的代码库。我在我的库的主模块中创建了一个
.config
方法,该方法依赖于我的
moduleConfigProvider
。我希望库的使用者在app.config阶段(app start时尽快)调用我的配置提供程序上的.configure

问题是模块中的my.config似乎在主应用程序模块的app.config之前运行。我如何解决这个问题

e、 这就是我使用配置的方式。我需要在.config阶段使用它,因为我需要配置$httpProvider之类的东西

// this module provides initial configuration data for module
angular.module('mymodule')
    .config(['$httpProvider', 'someOptionsProvider', 'myConfigProvider',
        function ($httpProvider, someOptionsProvider, myConfigProvider) {

            console.log("Consuming config now: ", myConfigProvider.config);

        }])
以下是配置提供程序:

angular.module('mymodule.config')
  .provider('myConfig', function() {

        var _this = this;

        _this.configure = configureMethod;
        _this.config = {};

        function configureMethod(configData) {
          _this.config = configData;
            console.log("Config set to:", configData);
        };


        this.$get = function() {
            return _this;
        };

    });
最后是我的app.config:

angular.module('app')
.config(['myConfigProvider', function(myConfigProvider) {

        console.log("Running App config:", myConfigProvider);

        var config = { a: 1 };

        console.log("Config ready to send:", config);
        myConfigProvider.configure(config);
    }])
;

好的,这很简单,只需使用提供程序函数中的其他提供程序作为依赖项

检查以下代码段

angular.module('mymodule',[])
.provider('myConfig'[
“$httpProvider”,
函数($httpProvider){
var_this=这个;
_this.configure=configureMethod;
_this.config={};
函数配置方法(configData){
//在这里对$httpProvider执行任何操作
_this.config=configData;
log(“配置设置为:”,configData);
console.log('配置$httpProvider')
};
这是。$get=function(){
把这个还给你;
};
}
])
angular.module('app',['mymodule']))
.config(['myConfigProvider',函数(myConfigProvider){
log(“正在运行的应用程序配置:”);
变量配置={
a:1
};
log(“Config ready to send:”,Config);
myConfigProvider.configure(配置);
}]);


也许你需要一些东西你希望你的库的配置块在使用你的库的主模块的配置块之后运行吗?是的,我希望我的库的
.config()
在主模块
.config()
@TanDuong之后运行谢谢你的链接,但它似乎不适用?@shridharma-或者,如果这是不可能的,我想知道我应该如何改变我的设计,这样它才能正确工作如果我理解正确-你说把我模块的.config函数中的代码放到configProvider的配置方法中吗?你检查过了吗?我现在正在把这个想法应用到我真正的代码库中,谢谢你的帮助:)