vue项目环境变量配置的实现方法


Posted in Javascript onOctober 12, 2018

问题

实际开发中,开发环境和生产环境中一些变量是不同的,比如接口地址等等,打包之前需要手动切换。

编译时

新建env.js

let baseUrl = '';
if(process.env.NODE_ENV == 'production'){
  baseUrl = 'https://xxxxxxxxx';
} else if (process.env.NODE_ENV == 'development') {
 baseUrl = '/api'
}

export {
  baseUrl
}

process.env.NODE_ENV 是通过webpack 内置的 DefinePlugin 为所有的依赖定义的变量

webpack.dev.conf.js

new webpack.DefinePlugin({
   'process.env.NODE_ENV': 'development'
  }),

webpack.prod.conf.js

new webpack.DefinePlugin({
   'process.env.NODE_ENV': 'production'
  }),

这样在项目任意文件中都能调用process.env.NODE_ENV变量,本人测试过,process并不是挂载在window变量上,猜测可能是挂载到了node的process变量。

在运行脚本编译项目的时候,会根据变量值的不同,设置不同的baseUrl。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
点击A元素触发B元素的事件在IE8下会识别成A元素
Sep 04 Javascript
AngularJs动态加载模块和依赖注入详解
Jan 11 Javascript
JavaScript中的原型prototype完全解析
May 10 Javascript
jQuery grep()方法详解及实例代码
Oct 30 Javascript
基于jQuery和CSS3实现APPLE TV海报视差效果
Jun 16 jQuery
Webpack打包css后z-index被重新计算的解决方法
Jun 18 Javascript
vue 1.x 交互实现仿百度下拉列表示例
Oct 21 Javascript
JavaScript实现异步图像上传功能
Jul 12 Javascript
微信小程序使用二次贝塞尔曲线画波浪
Dec 25 Javascript
vue 中 beforeRouteEnter 死循环的问题
Apr 23 Javascript
js实现详情页放大镜效果
Oct 28 Javascript
Ant Design Pro 之 ProTable使用操作
Oct 31 Javascript
原生JS实现自定义下拉单选选择框功能
Oct 12 #Javascript
原生JS实现轮播图效果
Oct 12 #Javascript
详解KOA2如何手写中间件(装饰器模式)
Oct 11 #Javascript
Element Input组件分析小结
Oct 11 #Javascript
element el-input directive数字进行控制
Oct 11 #Javascript
详解angular2.x创建项目入门指令
Oct 11 #Javascript
详解vscode中vue代码颜色插件
Oct 11 #Javascript
You might like
Protoss建筑一览
2020/03/14 星际争霸
php的list()的一步操作给一组变量进行赋值的使用
2011/05/18 PHP
色色整理的PHP面试题集锦
2012/03/08 PHP
Laravel使用支付宝进行支付的示例代码
2017/08/16 PHP
学习面向对象之面向对象的基本概念:对象和其他基本要素
2010/11/30 Javascript
JS子父窗口互相操作取值赋值的方法介绍
2013/05/11 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
关于jQuery判断元素是否存在的问题示例探讨
2014/07/21 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
使用JavaScript获取Request中参数的值方法
2016/09/27 Javascript
vue.js表格分页示例
2016/10/18 Javascript
jQuery Form表单取值的方法
2017/01/11 Javascript
详解angular2采用自定义指令(Directive)方式加载jquery插件
2017/02/09 Javascript
20个最常见的jQuery面试问题及答案
2018/05/23 jQuery
详解如何在你的Vue项目配置vux
2018/06/04 Javascript
使用JavaScript中的lodash编写双色球效果
2018/06/24 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
Javascript迭代、递推、穷举、递归常用算法实例讲解
2019/02/01 Javascript
vue中axios实现数据交互与跨域问题
2019/05/12 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
2019/09/02 Javascript
[02:05]2014DOTA2西雅图国际邀请赛 BBC第二天小组赛总结
2014/07/11 DOTA
python实现逆波兰计算表达式实例详解
2015/05/06 Python
TensorFlow损失函数专题详解
2018/04/26 Python
python 二维数组90度旋转的方法
2019/01/28 Python
python3 tcp的粘包现象和解决办法解析
2019/12/09 Python
python为QT程序添加图标的方法详解
2020/03/09 Python
Python多线程Threading、子线程与守护线程实例详解
2020/03/24 Python
python代码如何注释
2020/06/01 Python
pytorch随机采样操作SubsetRandomSampler()
2020/07/07 Python
CSS类名支持中文命名的示例
2014/04/04 HTML / CSS
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
销售所有的狗狗产品:Dog.com
2016/10/13 全球购物
薇姿法国官网:Vichy法国
2021/01/28 全球购物
如何设置Java的运行环境
2013/04/05 面试题
2014财产信托协议书范本
2014/11/18 职场文书
2019年浪漫婚礼证婚词
2019/06/27 职场文书