使用vue-cli3打包项目,通过配置不同的指令给项目设置不一样的配置。

npm run serve时会把process.env.NODE_ENV设置为‘development’;

npm run build 时会把process.env.NODE_ENV设置为‘production’;

此时只要根据process.env.NODE_ENV设置不同请求url就可以很简单的区分出本地和线上环境。

头疼的是打包时线上环境可能分多种,比如测试环境和生产环境等等。

在vue-cli2中打包时可以修改 “build” 和 “config”中的文件来区分不同的线上环境

而vue-cli3号称0配置,无法直接修改打包文件,那么怎么区分不同的线上环境分别传入不一样的配置呢?

官网给我们做了简单介绍(vue-cli-service-build),但只解释了现有几个指令所匹配的模式,对于上面的需求显然无法满足。

如下提供一种解决方案:
首先在package.json文件内添加测试环境和生产环境的打包指令:

 "build-test": "vue-cli-service build --mode alpha","build-prod": "vue-cli-service build --mode prod",

在项目根目录添加两个文件
.env.alpha

NODE_ENV = 'production'
VUE_APP_BASE_URL = 'http://test.linbenjian.work'

.env.prod

NODE_ENV = 'production'
VUE_APP_BASE_URL = 'http://www.linbenjian.work'

在项目中使用参数:

import axios from 'axios'
let baseurl = process.env.VUE_APP_BASE_URL || 'http://localhost:9001'

注:

  • —mode后面添加test、production 等预留参数无效
  • 配置文件内,参数添加VUE_APP 可通过调试

vue-cli-service build 环境设置相关推荐

  1. vue cli 4 多环境_Vue 笔记整理19

    19.1 vue-cli起步 19.1.1 什么是vue-cli Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统,提供: - 通过 @vue/cli 搭建交互式的项目脚手架. - 通 ...

  2. vue cli 4 多环境_Vue 前端uni-app多环境配置部署服务器的问题

    转载请标明出处: https://dujinyang.blog.csdn.net/article/details/100831712/ 本文出自:[奥特曼超人的博客] 前端Vue Vue 经过这一年的 ...

  3. VSCode 搭建Vue开发环境之Vue CLI

    2019独角兽企业重金招聘Python工程师标准>>> 一.简介说明 1.关于VS Code开发工具,安装和配置,更多可以参考以前文章 2.关于Vue.js,Vue是一个优秀的渐进式 ...

  4. 使用Vue CLI 3提升您的Vue.js工作流程

    没有命令行界面(CLI)工具的帮助,我们几乎无法想象现代Web开发. 通过减少重复繁琐的任务,它们极大地促进并加快了开发流程. 手动设置项目,具有所有的上线,构建,测试,预处理,优化和依赖项跟踪功能, ...

  5. cli vue 卸载,vue Cli 环境删除与重装教程 - 版本文档

    vue-cli 卸载,版本选择,安装 · 检测(图文教程:vue Cli 环境删除与重装) 重要说明: vue-cli 3.0+版本,使用的不是vue-cli,而是@vue/cli: 如果用以上的安装 ...

  6. vue项目通过命令行传参实现多环境配置(基于@vue/cli)

    大多数项目都有生产环境和开发环境,一般情况下应该够了,但是有时候还需要sit,uat,本地等环境,这时候假如要通过注释的方式切换环境就相当麻烦了. 如果可以像下面这样切换环境就方便了 npm run ...

  7. vue cli3 一键 build 区分测试环境和正式环境

    vue cli3 打包 build 区分测试环境和正式环境 通过自定义环境变量文件进行配置 思路: 默认情况下,执行 npm run serve 会以 development 的模式启动 执行 npm ...

  8. Vue项目实战:接口错误拦截与环境设置

    (一)接口错误拦截 使用场景: 统一报错 未登录拦截 请求值.返回值统一处理 使用axios插件进行拦截: 安装axios npm i axios --save-dev 在main.js文件中加入: ...

  9. vue脚手架搭建配置试调地址和端口号_全栈的自我修养: 002使用@vue/cli进行vue环境搭建 (使用Vue,SpringBoot,Flask完成前后端分离)...

    全栈的自我修养: 使用@vue/cli进行vue.js环境搭建 Success, real success, is being willing to do the things that other ...

最新文章

  1. Unity3d HDR和Bloom效果(高动态范围图像和泛光)
  2. Socket(套字节)编程,客户端 服务器端的发送消息
  3. *13.图的存储方式
  4. TCP/IP的层次结构以及各层数据封装的过程 (一)
  5. Lidar SLAM | 地面三维激光雷达测试报告
  6. request for KPI tile number display could not be executed for the second time
  7. summit网页上的smt打不开 提示无法启动应用程序 请与应用程序供应商联系
  8. webAppbuilder微件使用教程2 常用微件介绍
  9. 关于程序员面试时的智力题集锦
  10. Mac Python IDLE中如何更改字体
  11. jq 目录树ajax,javascript
  12. SwiftUI资源列表
  13. mysql 删除表的方法_MySQL 删除表的三种方式
  14. Django城市信息查询功能(3)
  15. 《精通Unreal Engine 3 卷1:3D游戏关卡设计》
  16. Eclipse设置护眼浅绿色背景
  17. unity3d 不规则外发光描边_PS发光字体教程
  18. 我们可能都低估了浪潮存储
  19. 关于曼哈顿距离下的最小生成树
  20. 爱乐馆-无损古典之刘汉盛榜单100牒

热门文章

  1. 谈谈如何写好一份简历
  2. 【Java实战篇】SpringBoot+MyBatis快速实现登录注册
  3. Hark的数据结构与算法练习之珠排序
  4. 笔记本UIOP几个键总是输入数字的问题
  5. 华为首次自曝“天才少年”成果:入职不到一年就干成这件大事,网友:值200万年薪!...
  6. 个人作品 轻航 - 社区商城系统
  7. EC2 Auto Scaling知识点
  8. 和数传媒:人工智能和区块链可能是典型应用
  9. linux nano编译器_Nano 编辑器可以做些什么?
  10. Sniffing and sending packets is not available: winpcap is not installed