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 相关文章推荐
javascript 语法基础 想学习js的朋友可以看看
Dec 16 Javascript
Javascript 读书笔记索引贴
Jan 11 Javascript
JavaScript中数据结构与算法(一):栈
Jun 19 Javascript
js按条件生成随机json:randomjson实现方法
Apr 07 Javascript
JS原生轮播图的简单实现(推荐)
Jul 22 Javascript
vue父组件向子组件动态传值的两种方法
Nov 11 Javascript
jQuery实现轮播图及其原理详解
Apr 12 jQuery
使用Vue开发自己的Chrome扩展程序过程详解
Jun 21 Javascript
js实现课堂随机点名系统
Nov 21 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
Jul 20 Javascript
vue中echarts引入中国地图的案例
Jul 28 Javascript
vue-cil之axios的二次封装与proxy反向代理使用说明
Apr 07 Vue.js
原生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
15个小时----从修改程序到自己些程序
2006/10/09 PHP
PHP4.04简明安装
2006/10/09 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
xml在joomla表单中的应用详解分享
2012/07/19 PHP
使用PHP接收POST数据,解析json数据
2013/06/28 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
jquery下利用jsonp跨域访问实现方法
2010/07/29 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
JavaScript DOM操作表格及样式
2015/04/13 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
javascript实现图片延迟加载方法汇总(三种方法)
2015/08/27 Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码
2016/06/23 Javascript
js封装tab标签页实例分享
2016/12/19 Javascript
Bootstrap源码解读排版(1)
2016/12/23 Javascript
jQuery实现Table表格隔行变色及高亮显示当前选择行效果示例
2017/02/14 Javascript
Angular2 路由问题修复详解
2017/03/01 Javascript
分分钟玩转Vue.js组件(二)
2017/03/01 Javascript
vue-dplayer 视频播放器实例代码
2019/11/08 Javascript
Vue父组件向子组件传值以及data和props的区别详解
2020/03/02 Javascript
JS实现表单中点击小眼睛显示隐藏密码框中的密码
2020/04/13 Javascript
[02:47]3.19DOTA2发布会 国服成长历程回顾
2014/03/25 DOTA
Python编程实现粒子群算法(PSO)详解
2017/11/13 Python
Python线程条件变量Condition原理解析
2020/01/20 Python
基于python图像处理API的使用示例
2020/04/03 Python
Django中的模型类设计及展示示例详解
2020/05/29 Python
全球酒店比价网:HotelsCombined
2017/06/20 全球购物
Draper James官网:知名演员瑞茜·威瑟斯彭所创品牌
2017/10/25 全球购物
大学生职业生涯规划书模板
2014/01/03 职场文书
优秀经理事迹材料
2014/02/01 职场文书
大学生社团活动总结
2014/04/26 职场文书
企业标语口号
2014/06/10 职场文书
电教室标语
2014/06/20 职场文书
全国法院系统开展党的群众路线教育实践活动综述(全文)
2014/10/25 职场文书
论群众路线学习心得体会
2014/10/31 职场文书
商铺租房协议书范本
2014/12/04 职场文书
python实现Nao机器人的单目测距
2021/09/04 Python