2017-04-06 5 views
0

ist es möglich, eine statische Variable basierend auf der Umgebung zu definieren?Angular 2: statische Variable basierend auf der Umgebung definieren

So etwas wie (dieser Code ist ein dummes Beispiel, aber es hält die Idee):

if (environment.production) { 
    public static MY_VAR: string = 'A'; 
} else { 
    public static MY_VAR: string = 'B'; 
} 

Vielen Dank für jeden Hinweis!

+2

'public static MY_VAR = environment.production? "A": "B"? –

+0

Danke das ist die Lösung! –

Antwort

0

was ich tue ist das Lesen der URL von window.location.host, wenn die Anwendung zum ersten Mal bootstrapped und dann entsprechend der Dev, Qa und UAT URL ich den API-Endpunkt in meiner Anwendung. Wie erreicht man das?

in Ihrem main.ts

platformBrowserDynamic([{provide:'EndPoint',useValue:config.getEndPoint()}]) 

export class config{ 
public static getEndPoint(){ 
const host = window.location.host 
if(host) // your logic goes here{ 

} 
} 
} 

In Ihrem Service-Datei injizieren es wie

constructor(@Inject('EndPoint') private endPoint:string) 
Verwandte Themen