vue中Npm run build 根据环境传递参数方法来打包不同域名


Posted in Javascript onMarch 29, 2018

项目开发中,前端在配置后端api域名时很困扰,常常出现:

本地开发环境: api-dev.demo.com

测试环境: api-test.demo.com

线上生产环境: api.demo.com,

这次是在Vue.js项目中打包,教大家个方法:

使用 npm run build -- xxx   ,根据传递参数xxx来判定不同的环境,给出不同的域名配置。

1.项目中/config/dev.env.js修改:

新增:HOST: '"dev"'

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
 NODE_ENV: '"development"',
 HOST: '"dev"'
})

2.项目中/config/prod.env.js修改:

获取传递进来的参数:

'use strict'
let HOST = process.argv.splice(2)[0] || 'prod';
console.log(HOST);
module.exports = {
 NODE_ENV: '"production"',
 HOST: '"'+HOST+'"'
}

3.项目中ajax封装的地方修改:

/**
** 设置API接口域名
**/
let apiUrl = '';
// 根据 process.env.HOST 的值判断当前是什么环境
// 命令:npm run build -- test ,process.env.HOST就设置为:'test'
let HOST = process.env.HOST;
HOST = HOST === 'prod' ? '' : '-' + HOST;
apiUrl = 'http://api'+HOST+'.demo.com';
axios.defaults.baseURL = apiUrl;

4.最后敲命令:

npm run build -- test

注意?是2个横杠, 后面跟参数,这样  process.env.HOST 就获取到参数  'test'  了,

apiUrl = 'http://api-test.demo.com'

若线上prod发布打包,npm run build -- prod

apiUrl = 'http://api.demo.com'

总结

以上所述是小编给大家介绍的vue中Npm run build 根据环境传递参数方法来打包不同域名,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
从JavaScript 到 JQuery (1)学习小结
Feb 12 Javascript
JS 有趣的eval优化输入验证实例代码
Sep 22 Javascript
解决jquery中美元符号命名冲突问题
Jan 08 Javascript
JavaScript数组Array对象增加和删除元素方法总结
Jan 20 Javascript
学习JavaScript设计模式(接口)
Nov 26 Javascript
让图片跳跃起来  javascript图片轮播特效
Feb 16 Javascript
JavaScript基于DOM操作实现简单的数学运算功能示例
Jan 16 Javascript
微信小程序实现上传图片功能
May 28 Javascript
Koa 使用小技巧(小结)
Oct 22 Javascript
JavaScript中this用法学习笔记
Mar 17 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
Oct 17 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
Jan 13 Vue.js
JS获取url参数,JS发送json格式的POST请求方法
Mar 29 #Javascript
spirngmvc js传递复杂json参数到controller的实例
Mar 29 #Javascript
Vue.js 表单控件操作小结
Mar 29 #Javascript
js传递数组参数到后台controller的方法
Mar 29 #Javascript
Vue.js实现可配置的登录表单代码详解
Mar 29 #Javascript
Vue项目中如何引入icon图标
Mar 28 #Javascript
JavaScript中的E-mail 地址格式验证
Mar 28 #Javascript
You might like
用PHP和ACCESS写聊天室(四)
2006/10/09 PHP
php中的观察者模式
2010/03/24 PHP
php在服务器执行exec命令失败的解决方法
2012/03/03 PHP
PHP错误处理函数
2016/04/03 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
firefox浏览器不支持innerText的解决方法
2013/08/07 Javascript
js setTimeout 常见问题小结
2013/08/13 Javascript
JavaScript 开发工具webstrom使用指南
2014/12/09 Javascript
详解Javascript函数声明与递归调用
2016/10/22 Javascript
js遮罩效果制作弹出注册界面效果
2017/01/25 Javascript
基于jQuery实现瀑布流页面
2017/04/11 jQuery
BootStrap TreeView使用实例详解
2017/11/01 Javascript
详细分析JS函数去抖和节流
2017/12/05 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
2018/07/23 jQuery
Vue render渲染时间戳转时间,时间转时间戳及渲染进度条效果
2018/07/27 Javascript
vue路由守卫,限制前端页面访问权限的例子
2019/11/11 Javascript
vue项目中在可编辑div光标位置插入内容的实现代码
2020/01/07 Javascript
javascript 代码是如何被压缩的示例代码
2020/05/06 Javascript
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
2014/05/23 Python
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
使用实现XlsxWriter创建Excel文件并编辑
2018/05/04 Python
Python常用字符串替换函数strip、replace及sub用法示例
2018/05/21 Python
OpenCV 模板匹配
2019/07/10 Python
Centos7 下安装最新的python3.8
2019/10/28 Python
关于python 跨域处理方式详解
2020/03/28 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
一款纯css3实现的鼠标经过按钮特效教程
2014/11/09 HTML / CSS
Elemis美国官网:英国的第一豪华护肤品牌
2018/03/15 全球购物
在印度上传处方,在线订购药品:Medlife
2019/03/28 全球购物
车间副主任岗位职责
2013/12/24 职场文书
大学英语演讲稿范文
2014/04/24 职场文书
保护地球的宣传语
2015/07/13 职场文书
感恩老师主题班会
2015/08/12 职场文书
诚实守信主题班会
2015/08/13 职场文书
Spring Boot 底层原理基础深度解析
2022/04/03 Java/Android
2022新作动画《福星小子》释出宣传影片 加入内田真礼&宫野真守配音演出
2022/04/08 日漫