如何在Angular的配置阶段使用状态配置之前修改状态配置?

时间:2015-02-11 20:53:40

标签: javascript angularjs

我希望能够修改我提供stateHelperProvider.state(obj)的对象。

我有一个这样的模块:

(function() {
    'use strict';
    angular
        .module('myApp', [])
        .config(stateConfig);

    stateConfig.$inject = ['stateConfigObject', 'stateHelperProvider', 'someProvider'];
    function stateConfig(stateConfigObject, stateHelperProvider, someProvider) {

        someProvider.$get().getSomeData().then(function(response) {
             // use the response here to modify the stateConfigObject
        });
        stateHelperProvider.state(stateConfigObject);
    }
})();

通过这种方式,会出现一个同步问题,并且stateConfigObject将不是最终传递给stateHelperProvider的正确的。配置阶段可能在a-sync内容完成之前完成。那么,无论如何都要同步这一切吗?

我已经尝试在someProvider中使用stateHelperProvider。$ get()就像这样,但仍然没有运气:

someProvider.$get().getSomeData().then(function(response) {
   // use the response here to modify the stateConfigObject
   stateHelperProvider.state(stateConfigObject);
});

0 个答案:

没有答案