使用环境变量在'angular.json'中构建期间动态替换文件

时间:2019-05-13 14:25:22

标签: javascript angular npm environment-variables angular-cli

我们有一个Angular 7项目,正在尝试动态替换文件,而没有angular.json文件中所有不同的文件。例如,当您在--prod之后使用ng build标志时,angular.jsonenvironment.ts替换为environment.prod.ts

我们还有另一个文件,其中包含特定于应用程序的配置设置,这些设置会根据安装情况而变化。例如,如果我们要为一个客户端部署项目,则可能要运行ng build --prod --configuration=clientOne以使用该客户端的特定配置文件。在这种情况下,您期望在angular.json文件中看到类似以下的内容。

"clientOne": {
  "fileReplacements": [{
    "replace": "src/app/clientSettings.ts",
    "with": "src/app/clientSettings.clientOne.ts"
  }]
}

这是主要问题:我们如何要求angular.jsonclientSettings.ts文件替换为其他基于环境标志的文件,例如--configuration=clientOne,而没有实际上在angular.json中指定每个选项。我们不希望其他使用软件的开发人员知道我们拥有哪些安装,也不需要知道他们拥有哪些安装。我们希望动态替换文件,而不指定它们在何处。我们可以git忽略该文件,但这似乎不实际。

0 个答案:

没有答案