Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度2:存储配置设置的策略_Angular_Webpack_Angular Cli - Fatal编程技术网

Angular 角度2:存储配置设置的策略

Angular 角度2:存储配置设置的策略,angular,webpack,angular-cli,Angular,Webpack,Angular Cli,我正在使用AngularCLI创建angular2项目。我使用一个json文件来存储一些可配置的设置,比如api端点等 CLI绑定了所有文件,因此json文件不会单独部署在dist文件夹中。这是一个问题,因为一旦部署,就无法更改这些设置。 在angualr应用程序中,通常使用什么策略来存储这些设置,这些设置可以在不重新部署的情况下进行编辑? 类似于web.config或app.config的内容。将文件条目添加到angular-cli.json中的资产将按原样复制到dist文件夹 “资产”:[

我正在使用AngularCLI创建angular2项目。我使用一个json文件来存储一些可配置的设置,比如api端点等 CLI绑定了所有文件,因此json文件不会单独部署在dist文件夹中。这是一个问题,因为一旦部署,就无法更改这些设置。 在angualr应用程序中,通常使用什么策略来存储这些设置,这些设置可以在不重新部署的情况下进行编辑?
类似于web.config或app.config的内容。

将文件条目添加到angular-cli.json中的资产将按原样复制到dist文件夹

“资产”:[
“资产”,
“fav.ico”,
“settings.json”

]

有一个文件夹
config
,其中配置了所有运行时环境。此文件夹需要添加到
“资产”
数组
.angular cli.config.

如果您需要创建一个表示应用程序设置的类,则可以调用
AppSettings

然后修改您的
main.ts
,使其具有如下内容:

fetch(configUrl, { method: 'get' })
.then((response) => {
  response.json()
    .then((data: any) => {
      if (environment.production) {
        enableProdMode();
      };
      platformBrowserDynamic([{ provide: AppSettings, useValue: new AppSettings(data.config) }]).bootstrapModule(AppModule);
    });
});
configUrl
将包含您的配置文件url,例如
/config/dev.json

这样,将使用
fetchapi
获取配置,并在应用程序引导中自动创建
AppSettings

您必须将
AppSettings
注入任何您想要使用它的地方


有关更多详细信息,请查看此

如何在cdn中链接json文件?@federicoscamuzzi每个客户都有自己的json,为什么在配置文件已经是应用程序的一部分时部署到cdn?