2016-09-14 46 views
1

在Angular 2框架呈現任何組件或服務之前,我需要從我的json文件獲取一些配置數據。我還沒有找到任何好的工作解決方案來實現這一點。如何在Angular 2應用程序啓動前閱讀配置文件?

我正在使用Angular 2 RC6在Angular 1的混合模式下工作,因此我使用升級適配器來執行引導。

你有什麼想法來實現我所需要的嗎?

+0

[this]怎麼辦?(http://stackoverflow.com/q/39452451/2587435) –

+0

對不起,但不確定您的鏈接? – ptomaszi

回答

1

在「main.ts」文件我用jQuery的「$ .getJSON」功能加載配置文件,並在回調我所說的引導funtion:

declare var $: any; 
declare var configFile: string; 

import './polyfills.ts'; 

import { enableProdMode } from '@angular/core'; 
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 
import { environment } from './environments/environment'; 
import { AppModule } from './app'; 

if (environment.production) { 
    enableProdMode(); 
    this.configFile = 'assets/config.prod.json'; 
} else { 
    this.configFile = 'assets/config.json'; 
} 

$.getJSON(this.configFile, (data) => { 
    environment.config = data; 

    platformBrowserDynamic().bootstrapModule(AppModule); 
}); 

執行這種方式可以確保引導你的配置數據完全加載後。

+0

可怕的想法..首先沒有jquery需要,更好地使用服務 – dontHaveName