vue打包之后生成一个配置文件修改接口的方法


Posted in Javascript onDecember 09, 2018

前言:

我们的vue代码打包上传到服务器之后,要是数据接口 以后换了域名什么的,是不是需要重新去vue文件里修改接口。

能不能生成一个配置文件,里面可以配置域名或其它什么字段之类的,这样以后换了域名,只需打开记事本 修改一下域名即可。

教程:

第一步:安装generate-asset-webpack-plugin插件

npm install --save-dev generate-asset-webpack-plugin

第二步:配置webpack.prod.conf.js文件

//让打包的时候输出可配置的文件
var GenerateAssetPlugin = require('generate-asset-webpack-plugin'); 
var createServerConfig = function(compilation){
 let cfgJson={ApiUrl:"http://198.129.31.108:8080"};
 return JSON.stringify(cfgJson);
}
//让打包的时候输入可配置的文件
//这段代码加在plugins:[]中
  new GenerateAssetPlugin({
    filename: 'serverconfig.json',
    fn: (compilation, cb) => {
      cb(null, createServerConfig(compilation));
    },
    extraFiles: []
  })

第三步:输入npm run build打包代码  结果如下

vue打包之后生成一个配置文件修改接口的方法

第四步:以后需要修改域名之类的  在serverconfig.json修改即可

vue打包之后生成一个配置文件修改接口的方法

第五步:获取ApiUrl

//在main.js中定义一个全局函数
Vue.prototype.getConfigJson=function(){
  this.$http.get("serverconfig.json").then((result)=>{
    //用一个全局字段保存ApiUrl 也可以用sessionStorage存储
    Vue.prototype.ApiUrl=result.body.ApiUrl;
  }).catch((error)=>{console.log(error)});
}

第六步:使用ApiUrl

//在app.vue里面 执行this.getConfigJson();
mounted:function(){
   this.getConfigJson();
}
//之后...用在需要用到的地方 因为ApiUrl已经是全局了 可以直接用this.ApiUrl
var url=this.ApiUrl+'/api/....

总结

以上所述是小编给大家介绍的vue打包之后生成一个配置文件修改接口的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
php与js的区别是什么
Aug 05 Javascript
如何减少浏览器的reflow和repaint
Feb 26 Javascript
Bootstrap carousel轮转图的使用实例详解
May 17 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
Aug 15 Javascript
基于rollup的组件库打包体积优化小结
Jun 18 Javascript
说说Vuex的getters属性的具体用法
Apr 15 Javascript
详解mpvue中使用vant时需要注意的onChange事件的坑
May 16 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
Jul 05 Javascript
JS中的模糊查询功能
Dec 08 Javascript
es6中let和const的使用方法详解
Feb 24 Javascript
通过实例解析javascript Date对象属性及方法
Nov 04 Javascript
原生JavaScript实现贪吃蛇游戏
Nov 04 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
Dec 09 #Javascript
JS数组去重的6种方法完整实例
Dec 08 #Javascript
原生JS实现的放大镜特效示例【测试可用】
Dec 08 #Javascript
JS实现的小火箭发射动画效果示例
Dec 08 #Javascript
jQuery时间戳和日期相互转换操作示例
Dec 07 #jQuery
ES6的Fetch异步请求的实现方法
Dec 07 #Javascript
JavaScript this绑定过程深入详解
Dec 07 #Javascript
You might like
Php做的端口嗅探器--可以指定网站和端口
2006/10/09 PHP
PHP随机数生成代码与使用实例分析
2011/04/08 PHP
php ci框架验证码实例分析
2013/06/26 PHP
自己写的php中文截取函数mb_strlen和mb_substr
2015/02/09 PHP
php实现比较两个文件夹异同的方法
2015/06/18 PHP
老生常谈PHP数组函数array_merge(必看篇)
2017/05/25 PHP
JavaScript中的prototype使用说明
2010/04/13 Javascript
JSONP跨域的原理解析及其实现介绍
2014/03/22 Javascript
JavaScript判断变量是否为空的自定义函数分享
2015/01/31 Javascript
JavaScript模拟重力状态下抛物运动的方法
2015/03/03 Javascript
js实现图片放大和拖拽特效代码分享
2015/09/05 Javascript
浅析nodejs实现Websocket的数据接收与发送
2015/11/19 NodeJs
jquery.tableSort.js表格排序插件使用方法详解
2020/08/12 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
vue中element 上传功能的实现思路
2018/07/06 Javascript
axios取消请求的实践记录分享
2018/09/26 Javascript
JS为什么说async/await是generator的语法糖详解
2019/07/11 Javascript
JavaScript常用工具函数大全
2020/05/06 Javascript
Python通过正则表达式选取callback的方法
2015/07/18 Python
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
Python实现简单石头剪刀布游戏
2021/01/20 Python
Opencv-Python图像透视变换cv2.warpPerspective的示例
2019/04/11 Python
用Python自动清理系统垃圾的实现
2021/01/18 Python
您的网上新华书店:文轩网
2016/08/24 全球购物
美国羽绒床上用品第一品牌:Pacific Coast
2018/08/25 全球购物
总裁岗位职责
2013/12/04 职场文书
给面试官的感谢信
2014/02/01 职场文书
小学校本培训方案
2014/06/06 职场文书
2014年销售工作总结与计划
2014/12/01 职场文书
大学生毕业评语
2014/12/31 职场文书
政协工作总结2015
2015/05/20 职场文书
民事代理词范文
2015/05/25 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电
JavaScript控制台的更多功能
2021/04/28 Javascript
Rhit高效可视化Nginx日志查看工具
2021/11/01 Servers