vue 中区分测试环境和正式环境

其实很简单,只要改动四个地方就行,不管你用的是vueResource或者anxios都可以

1.在/config/dev.env.js 和/config/prod.env.js中分别这样修改

/config/dev.env.js

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {//测试环境域名
  NODE_ENV: '"development"',
  API_ROOT: '"测试环境域名"'
})

/config/prod.env.js

'use strict'
module.exports = {//正式环境域名
  NODE_ENV: '"production"',
  API_ROOT: '"正式环境域名"'

}

2.然后再src目录下新建一个api/index.js

const root = process.env.API_ROOT;
export default root;
//把你的地址export出去,然后在main.js中全局引用

3.在main.js中全局引用

// 引用API文件
import api from './api/index.js'   //切换环境js
// 将API方法绑定到全局
Vue.prototype.$api = api

4.在页面接口中这样使用

 

 

然后,npm run dev 调的就是测试环境地址

npm run build 调的就是正式环境地址

 

 

自己也是在网上找了很多方法,最后根据自己的实际应用把最简洁的步骤贴给大家,祝你们工作顺利,身体健康

Vue项目中,测试环境正式环境接口显示不同通常是由于环境配置不同导致的。在测试环境中接口可能返回404错误,而正式环境接口正常,这可能是因为测试环境的API地址设置不正确,或者接口实际上并不存在。要解决这个问题,可以按照以下步骤操作: 1. 确保环境配置正确:检查项目的`.env`文件或者其他环境配置文件,确保测试环境正式环境的API基础路径配置是正确的。通常会有`.env.test``.env.production`这样的文件来区分不同环境的配置。 2. 使用环境变量区分接口地址:在Vue项目中,可以使用环境变量来区分不同环境下的接口地址。例如,可以在`.env.test`中设置`VUE_APP_API_URL=http://localhost:3000`,而在`.env.production`中设置`VUE_APP_API_URL=https://api.example.com`。 3. 在代码中动态使用环境变量:在Vue项目的代码中,可以通过`process.env.VUE_APP_API_URL`来动态引用环境变量中的API地址,这样在不同的环境下就会自动加载正确的接口地址。 4. 使用代理解决跨域问题:如果你的前端项目后端API部署在不同的域上,可能会遇到跨域问题。在这种情况下,可以使用代理服务器来转发请求。例如,在`vue.config.js`中配置代理: ```javascript module.exports = { devServer: { proxy: 'http://localhost:8080' } } ``` 这样,所有的请求都会通过`http://localhost:8080`转发到实际的后端服务。 5. 使用接口管理工具:使用如`axios`这样的HTTP客户端库来管理接口请求。在开发阶段,可以指定测试环境的API前缀,在生产环境中指定正式的API前缀。 请确保你的接口地址在测试环境中已经正确部署并且能够访问。如果接口尚未部署或存在问题,那么需要先解决这些基础问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值