。
config.service.ts
import { Injectable } from '@angular/core';
import { Http, Headers, RequestOptions, Response } from '@angular/http';
export interface Config {
PageSize: number;
EnableConsoleLogging: boolean;
WebApiBaseUrl: string;
}
@Injectable()
export class ConfigService {
private config: Config;
constructor(private http: Http) { }
public getConfigSettings(): Config {
if (!this.config) {
var Httpreq = new XMLHttpRequest();
Httpreq.open("GET", 'config.json', false);
Httpreq.send(null);
this.config = JSON.parse(Httpreq.responseText);
if (this.config.EnableConsoleLogging)
console.log("Config loaded", this.config);
}
return this.config;
}
}
私のsrcフォルダにありますconfig.json
{
"WebApiBaseUrl": "http://myWebApi.com",
"EnableConsoleLogging": true,
"PageSize": 10
}
が.angularであなたの資産にconfig.jsonを追加(これは角度-CLIを使用しています)
それを
を使用する方法
{
},
"apps": [
{
"assets": [
"config.json"
]
}
}
}
-cli.json
export class MyComponent {
private config: Config;
constructor(private configService: ConfigService) {
this.config = configService.getConfigSettings();
console.log(this.config.WebApiBaseUrl);
}
}
環境ごとにどのような角度構成ですか? 詳細を共有できますか? –
[this](https://github.com/angular/angular-cli/issues/7506)、[this](https://github.com/angular/angular-cli/issues/3855)と[this ](https://github.com/angular/angular-cli/issues/2508#issuecomment-257988755)を参照してください。 –
Angular 2環境フォルダを使用し、環境ごとにファイルを設定しています。 –