改写角初始化

改写角初始化

问题描述:

我很努力获得通过而引起的误差试图与deferredbootstrapper做掉一样改写角初始化

未捕获的错误

Rewriting Angular.js app to do away with deferredBootstrapper

收到错误时:[$注射器:modulerr]失败实例化模块ECP,原因是:错误:[$ injector:unpr]未知提供者:$ http

错误:[ng:areq]参数'Nav'不是函数,未定义

---不知道如何将以前的injectorModules ---或者打入帐户和用户变量来隐藏信息的其他模块被加载

app.config(["$http", "$q", "Account", "Layout", 
     function ($http, $q, Account, Layout) { 

好像错误的方式做到这一点之前。对我来说,它看起来类似于如何设置指令。

+0

我应该在应用配置之前使用这个注入器模块方法https://docs.angularjs.org/api/ng/function/angular.injector? – 2014-11-25 13:22:03

我试过这个方法 - 但得到模块超时错误

未捕获的错误:模块加载超时:棱角分明,配置/组件装载机,角翻译,角翻译装载机,静态文件

define([ 
    "jquery", 
    "angular", 
    "config/component-loader" 
], function ($, angular) { 

    // Create a new module 
    var app = angular.module("ECP", []); 

    // register a new service 
    app.value("ng", "ECP.services"); 

    // configure existing services inside initialization blocks. 
    app.config(["$http, $q, Account, Layout", function($http, $q, Account, Layout) { 
     // Configure existing providers 

     var configObj, 
      deferred; 

      configObj = { 
       account: null, 
       layout: null 
      }; 

      deferred = $q.defer(); 

      Account.fetch() 
       .then(function() { 
        configObj.account = Account; 
        return Layout.fetch(); 
       }) 
       .then(function() { 
        configObj.layout = Layout; 
        return deferred.resolve(configObj); 
       }) 
       .finally(function(){ 
        return deferred.promise; 
       }); 
    }]); 

    app.init = function() { 
     angular.bootstrap(document, ["ECP"]); 
    }; 

    return app; 
}); 
+0

未捕获错误:[$ injector:modulerr]由于以下原因,未能实例化模块ECP: 错误:[$ injector:unpr]未知提供者:$ http,$ q,帐户,布局 – 2014-11-26 11:46:48

+0

如何让它接受提供者?我被要求挂钩到Account对象并将其挂接到rootScope中 - 以便在所有其他模块启动之前可用。 – 2014-11-26 14:00:17

+1

请使用您问题上的编辑链接添加其他信息。后回答按钮应该只用于问题的完整答案。 – royhowie 2015-03-02 02:39:06