react 前端项目打包成 docker 后如何灵活配置后端地址呢?

2019-09-02 12:44:50 +08:00
 inkWave
不用框架的方法我知道,写个配置文件,然后引入文件去读里面的配置.
但是用了 react 之后我不知道怎么实现这个效果了.

需求:
能够在 docker run 的时候,通过环境变量或者挂入配置文件的方式来灵活配置后端地址.

我现在的办法:
docker run 的时候再去 build 项目.但是这样太慢了.
网上搜了一大圈,没找到解决办法.

劳烦各位大神帮帮忙,出出主意.
6622 次点击
所在节点    编程
5 条回复
fool079
2019-09-02 15:04:27 +08:00
后端绑个域名
xxapp
2019-09-03 22:37:19 +08:00
有个办法和你的发请求获取的思路差不多, 不过不需要异步发请求, 通过 window 共享配置就好了
inkWave
2019-09-03 23:39:09 +08:00
@xxapp 能稍微展开说说嘛?发请求这个总觉得很丑陋。
xxapp
2019-09-04 09:19:08 +08:00
@inkWave 举个例子,runtime-main.js 是 webpack 打出的 bundle,runtime-config.js 是运行时的配置,可以在 build 之后修改
``` html
<script src="runtime-config.js" />
<script src="runtime-main.js" />
```

``` js
// runtime-config.js
window.HOST = 'https://v2ex.com';
```

``` js
// runtime-main.js
// ...
var host = window.HOST;
// ...
```
inkWave
2019-09-04 10:29:06 +08:00
@xxapp 我靠!懂了.之前居然没想到.太感谢了.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/597154

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX