vue(vue-cli3)根据不同环境打包

10 篇文章 0 订阅

配置环境

在项目根目录下创建两个文件:
.env.test

NODE_ENV = 'production'
VUE_APP_ENV = 'test'

.env.build

NODE_ENV = 'production'
VUE_APP_ENV = 'production'

修改package.json

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

–mode 后面的内容需要与.env.名字 相同,这是vue-cli 3暴露的配置项

根据环境指定url

let baseUrl = ''

let curEnv = process.env.VUE_APP_ENV || 'development'

// case中的值需要与env文件中配置的值一致
switch (curEnv) {
  case 'development': 
    // 开发环境
    baseUrl = 'http://127.0.0.1:9999'
    
    break
  case 'test':
    // 测试环境
    baseUrl = 'https://a.b.com/api'
    
    break
  case 'production':
    // 生产环境
    baseUrl = 'https://c.d.com/api'

    break
}
module.exports = {
  baseUrl
}

为什么不直接使用NODE_ENV进行修改和判定?

通过NODE_ENV区分打包环境存在问题,webpack打包在NODE_ENV=='production’时和其他情况下打出的包存在不同,如果没有进行配置,可能项目无法运行。所以引入一个第三方变量,进行区分

更多环境

如果存在更多环境,按照以上配置,持续增加即可

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值