我已升级到angular2 RC6,并希望在引导我的AppModule之前加载外部
JSON配置文件.我在RC5之前有这个工作,但我现在很难找到一种注入这些数据的等效方法.
/** Create dummy XSRF Strategy for Http. */ const XRSF_MOCK = provide(XSRFStrategy,{ provide: XSRFStrategy,useValue: new FakeXSRFStrategyService() }); /** Create new DI. */ var injector = ReflectiveInjector.resolveAndCreate([ConfigService,HTTP_PROVIDERS,XRSF_MOCK]); /** Get Http via DI. */ var http = injector.get(Http); /** Http load config file before bootstrapping app. */ http.get('./config.json').map(res => res.json()) .subscribe(data => { /** Load JSON response into ConfigService. */ let jsonConfig: ConfigService = new ConfigService(); jsonConfig.fromJson(data); /** Bootstrap AppCOmponent. */ bootstrap(AppComponent,[...,provide(ConfigService,{ useValue: jsonConfig }) ]) .catch(err => console.error(err)); });
这工作得很好,但很难改变与RC6一起工作.
我正在尝试以下方法,但很难修改带有加载数据的预定义AppModule:
const platform = platformBrowserDynamic(); if (XMLHttpRequest) { // Mozilla,Safari,... request = new XMLHttpRequest(); } else if (ActiveXObject) { // IE try { request = new ActiveXObject('Msxml2.XMLHTTP'); } catch (e) { try { request = new ActiveXObject('Microsoft.XMLHTTP'); } catch (e) { console.log(e); } } } request.onreadystatechange = function() { if (this.readyState === 4 && this.status === 200) { var json = JSON.parse(this.responseText); let jsonConfig: ConfigService = new ConfigService(); jsonConfig.fromJson(json); /**** How do I pass jsConfig object into my AppModule here?? ****/ platform.bootstrapModule(AppModule); } }; // Open,send. request.open('GET','./config.json',true); request.send(null);
我有同样的问题.看起来你遇到了
my Gist
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。