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 相关文章推荐
经典的解除许多网站无法复制文字的绝招
Dec 31 Javascript
jQuery对象和DOM对象相互转化
Apr 24 Javascript
JS鼠标事件大全 推荐收藏
Nov 01 Javascript
5个最佳的Javascript日期处理类库分享
Apr 15 Javascript
addEventListener()第三个参数useCapture (Boolean)详细解析
Nov 07 Javascript
js动态修改input输入框的type属性(实现方法解析)
Nov 13 Javascript
jQuery+CSS3实现四种应用广泛的导航条制作实例详解
Sep 17 Javascript
详解node.js搭建代理服务器请求数据
Apr 08 Javascript
JS SetInterval 代码实现页面轮询
Aug 11 Javascript
vue组件tabbar使用方法详解
Nov 06 Javascript
详解Vue项目中实现锚点定位
Apr 24 Javascript
vue 查看dist文件里的结构(多种方式)
Jan 17 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文件目录基础操作
2014/11/11 PHP
php采用session实现防止页面重复刷新
2015/12/24 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
PHP应用跨时区功能的实现方法
2019/03/21 PHP
海量经典的jQuery插件集合
2010/01/12 Javascript
js 强制弹出窗口代码研究-又一款代码
2010/03/20 Javascript
一个简单的jQuery插件制作 学习过程及实例
2010/04/25 Javascript
jQuery获取css z-index在各种浏览器中的返回值
2010/09/15 Javascript
用JQUERY增删元素的代码
2012/02/14 Javascript
利用JQuery和JS实现奇偶行背景颜色自定义效果
2012/11/19 Javascript
javascript进行数组追加方法小结
2014/06/16 Javascript
学习JavaScript设计模式(接口)
2015/11/26 Javascript
JavaScript组件开发完整示例
2015/12/15 Javascript
老生常谈onBlur事件与onfocus事件(js)
2016/07/09 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
JS实现元素上下左右移动效果
2017/10/18 Javascript
axios进阶实践之利用最优雅的方式写ajax请求
2017/12/20 Javascript
javascript实现blob加密视频源地址的方法
2019/08/08 Javascript
vue 实现购物车总价计算
2019/11/06 Javascript
VUE实现Studio管理后台之鼠标拖放改变窗口大小
2020/03/04 Javascript
非常漂亮的js烟花效果
2020/03/10 Javascript
谈一谈vue请求数据放在created好还是mounted里好
2020/07/27 Javascript
[29:59]完美世界DOTA2联赛PWL S3 Forest vs access 第二场 12.11
2020/12/13 DOTA
在Python的Django框架中创建和使用模版
2015/07/15 Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
2018/02/23 Python
Python flask框架post接口调用示例
2019/07/03 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
2020/09/09 Python
Timex手表官网:美国运动休闲手表品牌
2017/01/28 全球购物
几个SQL的面试题
2014/03/08 面试题
文员自我评价怎么写
2013/09/19 职场文书
员工考核评语大全
2014/04/26 职场文书
教师学期个人总结
2015/02/11 职场文书
大学生预备党员自我评价
2015/03/04 职场文书
大队委员竞选稿
2015/11/20 职场文书