Vue 开发项目过程中在开发环境,测试环境,生产环境设置不同的请求接口域名

一、平常项目前期我们会使用线下的本地服务请求接口,上线之前测试环境以及生产环境,以下讲解不同环境的接口配置(3.x为例)

二、步骤

  1、在根目录下创建".env"文件,内容如下。(production生产环境)

1
2
NODE_ENV = 'production'
VUE_APP_FLAG = 'pro'

  2、在根目录下创建".env.test"文件,这是测试环境需要的配置

1
2
3
NODE_ENV = 'production'
VUE_APP_FLAG = 'test'
outputDir = test 

  创建截图如下

  

 

 

三、找到根目录下的package.json文件

  在script中添加  "test": "vue-cli-service build --mode test" (这句话的作用是用来打包生成测试环境的代码,也即是说测试环境的打包需要使用npm run test命令来代替npm run build,生产环境则需要使用npm run build)

  

 

四、在main.js中判断当前环境需要加载的接口域名(需要引入axios)

  注:此处如果使用else中的开发环境路径,则vue.config.js中配置的代理将不起作用,故可将此处注释使用代理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import axios from 'axios'
 
/*第一层if判断生产环境和开发环境*/
if (process.env.NODE_ENV === 'production') {
  /*第二层if,根据.env文件中的VUE_APP_FLAG判断是生产环境还是测试环境*/
  if (process.env.VUE_APP_FLAG == 'pro') {
      //production 生产环境
      axios.defaults.baseURL = 'http://api.xinggeyun.com';//路径
  } else {
      //test 测试环境
      axios.defaults.baseURL = 'http://192.168.0.152:8103';//路径
  }
} else {
  //dev 开发环境
  //axios.defaults.baseURL = 'http://192.168.0.152:8102';//路径
} 

 

 

 

 五、执行不同的命令生产对应环境的包

  生产环境域名包:npm run build

  测试环境域名包:npm run test

 

posted @   杰_森  阅读(5175)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示