- dev本地开发环境,test服务器测试环境;product服务器生产环境;
- 常见的配置是这样的,只能区分dev和test.
const serverUrl = process.env.NODE_ENV === 'development' ? devUrl : testUrl
问题:如果需要再加一个product服务器生产环境前缀productUrl,能够自动识别当前项目运行环境是测试还是生产。需要在前端代码中怎么配置,需要在服务器端怎么配置?
const serverUrl = process.env.NODE_ENV === 'development' ? devUrl : testUrl
问题:如果需要再加一个product服务器生产环境前缀productUrl,能够自动识别当前项目运行环境是测试还是生产。需要在前端代码中怎么配置,需要在服务器端怎么配置?
const serverUrl = process.env.NODE_ENV === 'development' ? devUrl : process.env.NODE_ENV === 'production' ? productUrl : testUrl
再或者
根目录建立:.env.production
,.env.development
...
楼上 @赫子子 的方法是目前@vue/cli官方解决方案,这里补充一下,在.env.production
,.env.development
等环境变量内配置ENV=devlopmen
或ENV=production
参数,在执行npm run build
命令时使用--mode=produciton
选项指定读取哪个环境变量,在业务逻辑中不需要单独设置某个环境的API域名,这样利于后期维护,有变动只需要改环境变量就行了,具体配置可以参考@vue/cli官方文档
15 回答8.4k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
8 回答6.2k 阅读
3 回答1.9k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
4 回答4.3k 阅读✓ 已解决
自己解决了。直接判断当前域名来配置不同的
serverUrl