如何很好地写路径配置

2018-01-24 17:40:56 +08:00
 deathscythe
本人有个项目,项目里面的 config.js 文件是管理一些常量"地址头"的,
比如
生产环境就
API_URL = 'http://api.prod.com'
WEB_URL = 'http://prod.com'

测试环境就
API_URL = 'http://api.test.com'
WEB_URL = 'http://test.com'

现在我用的方法是判断 window.location.origin 来区分,
但是如果不只有生产环境和测试环境,那么要写几个 else if,觉得不好看。
大家有一些好的建议么?
3108 次点击
所在节点    JavaScript
8 条回复
SakuraKuma
2018-01-24 18:01:53 +08:00
拍平 if,可以用 object,然后用变量咯。
deathscythe
2018-01-24 20:51:30 +08:00
@SakuraKuma object 有想过,是不是做个循环,然后写个方法来改变这些变量?
polun
2018-01-24 23:00:44 +08:00
scriptB0y
2018-01-24 23:18:22 +08:00
SakuraKuma
2018-01-25 09:21:42 +08:00
@deathscythe #2 你的楼下已经告诉了你原理了,就是根据 env 直接读,不用循环呀
```js
const
API_MAP = {
DEV: {
// api here
},
PRODUCTION: {
// api here
},
// etc...
};
```
deathscythe
2018-01-25 16:07:35 +08:00
@SakuraKuma
@polun
@scriptB0y

😂 很好,看到提到 env 想到了,那么我把路径写在 webpack 配置上,根据 env 去生成。感谢各位。
deathscythe
2018-01-25 16:08:15 +08:00
@SakuraKuma
@polun
@scriptB0y

😂 很好,看到提到 ‘ env ’ 想到了,那么我把路径写在 webpack 配置上,根据去生成。感谢各位。
deathscythe
2018-01-25 16:11:12 +08:00
what ?提示我重复发相同内容我以为我没发成功

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

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

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

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

© 2021 V2EX