在Angular 7中为不同的客户加载不同的索引文件

时间:2019-05-29 07:03:52

标签: angular

我希望能够为不同的客户托管不同的index.html文件,以便在应用程序加载屏幕上允许客户品牌化。

我的客户有自己的网址,例如:

customer1.myapp.com
customer2.myapp.com

因此,每个客户都希望有自己的应用程序加载屏幕(您知道默认的“正在加载...”。

我真的更喜欢在index.html的脚本标签中没有这种配置,而是基于location.origin或类似的东西加载不同的预加载屏幕,但这是我目前能想到的。

任何想法如何解决这个问题?我想加载不同的index.html文件,但不知道如何执行此操作。

1 个答案:

答案 0 :(得分:0)

不同的域名意味着每个域的构建都不同。

这意味着您应该为angular.json文件进行多种配置(您知道,例如使用--prod时)。

默认情况下,您已开发和生产。但是您可以根据需要添加任意数量。

好的是,该配置考虑了文件替换:

      "configurations": {
        "production": {
          "fileReplacements": [{
            "replace": "src/environments/environment.ts",
            "with": "src/environments/environment.prod.ts"
          }],

这意味着您要做的就是提供要在配置中替换的文件!

在那之后,您所要做的就是运行ng build --configuration=clientOne,然后将为您的客户端One构建项目,其中包含正确的文件。