将运行时环境与React和heroku结合使用

时间:2018-10-19 10:22:45

标签: reactjs heroku create-react-app

所以我在heroku上有一个演出和生产应用程序。

我还使用create-react-app,在构建期间嵌入环境变量。由于构建是在staging上进行的,然后将应用程序发布到production,因此我正在生产staging的环境变量。

是否有一种方法可以在production上(从heroku配置中)获取运行时环境而无需重建整个应用程序?

1 个答案:

答案 0 :(得分:1)

不是简短的答案。

基本上,当您构建前端应用程序时,它们会从节点服务器(对于create react app而言)变成静态文件。这意味着js-css-html都被硬烘焙到静态文件中。然后,当您从暂存更改为生产时,这些相同的文件将与暂存中的“硬编码”变量一起传输。

对此有一个凌乱的解决方案,您编写了一个脚本来查找并替换缩小的javascript文件中的变量,但这很讨厌.....

一个更好的解决方案是使用生产变量来重建前端,这并不意味着花费很长时间。这也使您有机会在部署到生产之前进行单元测试等。

我希望这会有所帮助!