vue cli3 区分开发环境,测试环境,正式环境

  • 在根目录下新建 .env.xx (xx可以是自己取的用来区分这三个环境)
  • 注意前缀的 " . " 别忘了
// 如:
.env.development     // 开发
.env.test			// 测试
.env.production		// 正式
  • 编辑新建的文件
  • 注意:全局变量仅除NODE_ENV和BASE_URL这两个保留变量外,其余自定义变量都需使用VUE_APP开头。
  • .env文件里不允许存在注释 (这里只为了大家更好的阅读理解)
// env.development
NODE_ENV = 'development'
VUE_APP_ENV= 'development'

// env.test
// 测试环境和正式环境一样都是需要打包所以NODE_ENV都是'production',
// VUE_APP_ENV是我们自己取的用来区分环境的变量,为了和正式环境打包完的dist区分,我们指定测试环境的输出目录outputDir	
NODE_ENV = 'production'
VUE_APP_ENV= 'test'
outputDir = 'test''		// 打包目录名

// env.production	
NODE_ENV = 'production'
VUE_APP_ENV= 'production'
outputDir = 'dist'		// 打包目录名

  • 接下来我们就可以根据VUE_APP_ENV来区分不同环境
let BASE_URL = null
if(process.env.VUE_APP_ENV=='development'){
  console.log('开发环境')
  BASE_URL = 'https://www.development.com'
}else if(process.env.VUE_APP_ENV=='test'){
  console.log('测试环境')
  BASE_URL = 'https://www.test.com'
}else if(process.env.VUE_APP_ENV=='production'){
  console.log('正式环境')
  BASE_URL = 'https://www.production.com'
}
  • 在vue.config.js设置或修改打包文件名称
  • env.production是生产环境,.env.test是测试环境,两个文件的【NODE_ENV】都= ‘production’ 所以用另一个变量【VUE_APP_ENV】 来区分环境

module.exports = {
  // 根据不同环境输出文件目录
  outputDir: 'buildFile/'+ process.env.outputDir,
};
  • 修改打包命令(packge.json中)
"build": "vue-cli-service build --mode production && vue-cli-service build --mode test",
  • 现在当你执行完npm run build
  • 你会发现,打包了2次
    -在buildFile文件分别生成dist和test文件夹
  • 记得在.gitignore 文件,添加/test 这样上传代码就不会上传被打包好的test文件了

如果不区分测试和正式环境
我们不需要新建文件,直接根据process.env.NODE_ENV来区分
“production” 打包环境(测试和正式环境)
“development” 开发环境(本地)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值