vue-cli中引入环境变量配置

1,一般一个项目都会有以下 3 种环境:- 开发环境- 测试环境- 生产环境
我们可以在根目录下创建以下形式的文件进行不同环境下变量的配置:

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

如官方文档所说,通过为.env文件增加后缀来设置某个模式下特有的环境变量。

在这里插入图片描述
在这里插入图片描述
2.我这里创建一个名为 .env.stage的文件,该文件表明其只在 stage(测试)环境下被加载,在这个文件中,我们可以配置如下键值对的变量:

NODE_ENV=stage//环境名称
VUE_APP_TITLE=stage mode
VUE_APP_BASE_URL = 'groupClient'
VUE_APP_BASE_API = '/massgroup'

3.这时候我们怎么在 vue.config.js 中访问这些变量呢?很简单,使用 process.env.[name] 进行访问就可以了,比如:

// vue.config.js的service.interceptors.response.use(res => {中

console.log("当前环境变量:"+process.env.NODE_ENV) // development(在终端输出)
console.log("当前环境路径:"+process.env.VUE_APP_BASE_URL)
console.log("当前环境路径:"+process.env.VUE_APP_BASE_API)

3.当你运行 npm serve 命令后会发现输出的是 development,因为 vue-cli-service serve 命令默认设置的环境是development,你需要修改 package.json 中的 serve 脚本的命令为:

"scripts": {
    "serve": "vue-cli-service serve --mode stage",
}

–mode stage其实就是修改了 webpack 4 中的 mode 配置项为 stage,同时其会读取对应 .env.[model]文件下的配置,如果没找到对应配置文件,其会使用默认环境 development,同样 vue-cli-service build 会使用默认环境 production。

这时候如果你再创建一个 .env 的文件,再次配置重复的变量,但是值不同,如:

NODE_ENV=staging
VUE_APP_TITLE=staging mode
VUE_APP_NAME=project

文章摘录自

https://www.jianshu.com/p/33428dd6cb8a

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值