vue配置环境变量,通过环境变量配置devServer.proxy和axios的baseURL

本文介绍了Vue CLI项目的模式概念,重点讲解如何配置环境变量,特别是`.env.development`和`.env.production`文件。在开发环境中设置axios的基础URL与Vue CLI的devServer.proxy,以实现API请求的代理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模式

模式是 Vue CLI 项目中一个重要的概念。默认情况下,一个 Vue CLI 项目有三个模式:

  • development 模式用于 vue-cli-service serve
  • test 模式用于 vue-cli-service test:unit
  • production 模式用于 vue-cli-service build 和 vue-cli-service test:e2e

环境变量#

你可以在你的项目根目录中放置下列文件来指定环境变量:

.env                # 在所有的环境中被载入
.env.local          # 在所有的环境中被载入,但会被 git 忽略
.env.[mode]         # 只在指定的模式中被载入
.env.[mode].local   # 只在指定的模式中被载入,但会被 git 忽略

.env.development:开发环境下的配置文件
.env.production :生产环境下的配置文件
如果没有配置这两个文件,运行 npm run serve 时,process.env.NODE_ENV 的值默认就是 development;运行 npm run build 时,process.env.NODE_ENV 的值默认是 production

"scripts": {
    "serve": "vue-cli-service serve",//development开发环境
    "build": "vue-cli-service build",//production生产环境
    "lint": "vue-cli-service lint"
 },

 示例:

.env.development

NODE_ENV = 'development'

VUE_APP_BASE_API = 'http://xx.xxx.xxx.xx:xxx:xxxx/api'

VUE_APP_BASE_URL = 'http://xxx:xxxx'

VUE_APP_BASE_NAME = '/api'

vue.config.js

devServer: {
    // port: 6666,
    open: true,
    overlay: {
      warnings: false,
      errors: true
    },
    proxy: {
      [process.env.VUE_APP_BASE_NAME]: {
        target: process.env.VUE_APP_BASE_URL,//代理地址
        changeOrigin: true, // 是否跨域
        pathRewrite: {
          ['^'+process.env.VUE_APP_BASE_NAME]: ''
        }
      },
    }
  },

配置axios

const http = axios.create({
    withCredentials: true,// 指定某个请求应该发送凭据。允许客户端携带跨域cookie,也需要此配置
    baseURL: process.env.VUE_APP_BASE_URL, // 所有请求的公共地址部分
    timeout: 3000 // 请求超时时间 这里的意思是当请求时间超过5秒还未取得结果时 提示用户请求超时
})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值