多环境变量配置

博客介绍了Vue项目的配置方法,可通过–mode xxx执行不同环境,如本地启动用development,打包测试用staging,正式打包用production。还提到以特定开头的变量在代码中的访问方式,以及在项目根目录新建三种环境配置文件,变量统一在src/config/env.*.js管理,在config下新建对应文件方便修改且无需重启项目。

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

在package.js中的script配置servestagebuild,通过–mode xxx来执行不同环境

  • 通过npm run serve 从本地启动,执行 development
  • 通过npm run stage 打包测试,执行 staging
  • 通过npm run build 进行打包,执行 production
"scripts": {
  "serve": "vue-cli-service serve --open",
  "stage": "vue-cli-service build --mode staging",
  "build": "vue-cli-service build",
}
对项目进行配置

VUE_APP开头的变量,在代码中可以通过process.env.VUE_APP 访问
比如VUE_APP_ENV = 'development'通过process.env.VUE_APP_ENV访问
除了VUE_APP_*变量之外,在你的应用代码中始终可用的还有两个特殊的变量NODE_ENVBASE_URL

在项目根目录中新建这三种环境的配置,如下:

  • .env.development 本地开发环境配置
NODE_ENV='development'
# must start with VUE_APP_
VUE_APP_ENV = 'development'
  • .env.staging 测试环境配置
NODE_ENV='production'
# must start with VUE_APP_
VUE_APP_ENV = 'staging'
  • .env.production 正式环境配置
 NODE_ENV='production'
# must start with VUE_APP_
VUE_APP_ENV = 'production'

这里我们并没有定义很多变量,只定义了基础的 VUE_APP_ENV development stagin production
变量我们统一在 src/config/env.*.js 里进行管理。

这里有个问题,既然这里有了根据不同环境设置变量的文件,为什么还要去 config 下新建三个对应的文件呢?

修改起来方便,不需要重启项目,符合开发习惯。

config / index.js

// 根据环境引入不同配置 process.env.NODE_ENV
const config = require('./env.' + process.env.VUE_APP_ENV)
module.exports = config

配置对应环境的变量,拿本地环境文件env.development.js举例,用户可以根据需求修改

// 本地环境配置
module.exports = {
  title: 'vue-admin-template',
  baseUrl: 'http://localhost:1001', // 项目地址
  baseApi: 'https://test.xxx.com/api', // 本地api请求地址
  APPID: 'xxx',
  APPSECRET: 'xxx'
}

根据环境不同,变量就会不同了

// 根据环境不同引入不同baseApi地址
import { baseApi } from '@/config'
console.log(baseApi)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值