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 相关文章推荐
javascript 文档的编码问题解决
Mar 01 Javascript
javascript 原型模式实现OOP的再研究
Apr 09 Javascript
jQuery实现高亮显示的方法
Mar 10 Javascript
jquery实现用户打分评分特效
May 28 Javascript
原生js更改css样式的两种方式
Mar 15 Javascript
Vue 过渡实现轮播图效果
Mar 27 Javascript
AngularJS 支付倒计时功能实现思路
Jun 05 Javascript
Webpack如何引入bootstrap的方法
Jun 17 Javascript
Angular数据绑定机制原理
Apr 17 Javascript
js实现同一个页面,多个enter事件绑定的示例
Oct 10 Javascript
KOA+egg.js集成kafka消息队列的示例
Nov 09 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
Nov 27 jQuery
基于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
法兰绒滤网冲泡
2021/03/03 冲泡冲煮
文章推荐系统(三)
2006/10/09 PHP
php高级编程-函数-郑阿奇
2011/07/04 PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
2014/06/23 PHP
Destoon实现多表查询示例
2014/08/21 PHP
PHP针对JSON操作实例分析
2015/01/12 PHP
使用JS进行目录上传(相当于批量上传)
2010/12/05 Javascript
jquery实现带复选框的表格行选中删除时高亮显示
2013/08/01 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
JavaScript设计模式之抽象工厂模式介绍
2014/12/28 Javascript
javascript作用域链(Scope Chain)用法实例解析
2015/11/30 Javascript
简单实现JavaScript图片切换效果
2016/11/28 Javascript
javaScript中封装的各种写法示例(推荐)
2017/07/03 Javascript
浅谈原生JS中的延迟脚本和异步脚本
2017/07/12 Javascript
React Native预设占位placeholder的使用
2017/09/28 Javascript
vue axios 二次封装的示例代码
2017/12/08 Javascript
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
2017/12/24 jQuery
js使用formData实现批量上传
2020/03/27 Javascript
JavaScript键盘事件常见用法实例分析
2019/01/03 Javascript
微信端调取相册和摄像头功能,实现图片上传,并上传到服务器
2019/05/16 Javascript
JavaScript实现文件下载并重命名代码实例
2019/12/12 Javascript
es6中class类静态方法,静态属性,实例属性,实例方法的理解与应用分析
2020/02/15 Javascript
jQuery实现增删改查
2020/12/22 jQuery
Python判断变量是否已经定义的方法
2014/08/18 Python
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
python实现感知器
2017/12/19 Python
使用Python编写Prometheus监控的方法
2018/10/15 Python
We Fashion荷兰:一家国际时装公司
2018/04/18 全球购物
印尼购物网站:iLOTTE
2019/10/16 全球购物
Moda Operandi官网:美国奢侈品电商,海淘秀场T台同款
2020/05/26 全球购物
酒吧创业计划书
2014/01/18 职场文书
元旦晚会策划方案
2014/02/18 职场文书
承兑汇票延期证明
2015/06/23 职场文书
Python带你从浅入深探究Tuple(基础篇)
2021/05/15 Python
python绘制简单直方图(质量分布图)的方法
2022/04/21 Python