如何在Angular中在运行时设置deployUrl

时间:2017-06-27 23:35:19

标签: javascript json angular typescript webpack

在Angular中," webpack_public_path "或" webpack_require .p"可以通过以下几种方式为项目定义:

  • 在.angular-cli.json文件中设置deployUrl
  • 添加--deployUrl" some / path"到了" ng build"命令行

但是,我需要能够在运行时设置此值,以便在应用程序启动时它来自我的assets / config.json文件。我想到了类似下面的内容,可能是在我的main.ts文件中定义的,但我没有尝试过任何工作:

__webpack_require__.p=window.config['deployUrl'];

有人可以告诉我该怎么做,任何帮助将不胜感激!谢谢!

1 个答案:

答案 0 :(得分:0)

经过一番进一步的调查后发现问题的答案是" In Webpack, how do I set the public path dynamically?"做得好。当我最初尝试这个时,我无法使它工作,但在再次尝试之后我获得了成功。

唯一的区别是我没有创建一个globals.d.ts文件来添加声明语句,我只是将以下行添加到我的main.ts文件中:

declare var  __webpack_public_path__:string;
__webpack_public_path__= 'public/path/location';

我不确定这是不是最佳做法......