解决Vue在封装了Axios后手动刷新页面拦截器无效的问题


Posted in Javascript onNovember 08, 2018

项目类型:vue+vux+axios

刚开始,把Axios封装在了http.js文件里面,然后为了使用VUX的提示框消息,把拦截器直接写在了main.js里面。直接调用接口,一切正常。

然而因为返回值有统一的code错误代码提示,所以在拦截器里面加入了code的判断以便统一返回值。刚开始一切都是按照预期的结果来走的。就在一个夜黑风高的晚上,我头晕眼花的按F5手动刷新了一下页面,惊奇的发现拦截器失效了,并没有拦截外面的Coode Json代码层,而是直接把服务器的全部json数据劈头盖脸的砸在了我的脸上。一脸懵逼的我以为是接口的问题,可是在组件里面直接用console.log打印出来的数据又是对的。

解决Vue在封装了Axios后手动刷新页面拦截器无效的问题

然后我突然想到了一个问题,直接点击页面返回的话,确实是OK的,但是如果按F5手动刷新的话,Axios并不会直接走main.js里面的拦截器代码。

后来我把拦截器放在了封装的http.js里面,结果就一切正常了,不过郁闷的是放在了外面以后,vux的提示插件没有办法用了。

打印了this指针,果不其然的undefind了,后来想到了一个比较变通的方法,我在index.html里面增加了一个var app用来存储main里面初始化的vue对象,并且在main.js里面把初始化的vue对象给赋值到windows.app上面,这样全局都可以使用了。

解决Vue在封装了Axios后手动刷新页面拦截器无效的问题

把vux的提示代码加上window.app.$vux.toast.show 完美解决问题!

总结

以上所述是小编给大家介绍的解决Vue在封装了Axios后手动刷新页面拦截器无效的问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
ExtJS 入门
Oct 29 Javascript
js实现的复制兼容chrome和IE
Apr 03 Javascript
Javascript+CSS实现影像卷帘效果思路及代码
Oct 20 Javascript
实现无刷新联动例子汇总
May 20 Javascript
JS实现兼容各浏览器解析XML文档数据的方法
Jun 01 Javascript
JavaScript中的cacheStorage使用详解
Jul 29 Javascript
JavaScript第一篇之实现按钮全选、功能
Aug 21 Javascript
jQuery阻止移动端遮罩层后页面滚动
Mar 15 Javascript
ES5 ES6中Array对象去除重复项的方法总结
Apr 27 Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
Sep 25 Javascript
这样回答继承可能面试官更满意
Dec 10 Javascript
解决vue打包 npm run build-test突然不动了的问题
Nov 13 Javascript
vue.js层叠轮播效果的实例代码
Nov 08 #Javascript
vue-cli 构建骨架屏的方法示例
Nov 08 #Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
Nov 08 #Javascript
详解在不使用ssr的情况下解决Vue单页面SEO问题
Nov 08 #Javascript
Vux+Axios拦截器增加loading的问题及实现方法
Nov 08 #Javascript
Angular设置别名alias的方法
Nov 08 #Javascript
vue-cli安装使用流程步骤详解
Nov 08 #Javascript
You might like
thinkPHP的Html模板标签使用方法
2012/11/13 PHP
Yii中Model(模型)的创建及使用方法
2015/12/28 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
php 中的信号处理操作实例详解
2020/03/04 PHP
用javascript获取textarea中的光标位置
2008/05/06 Javascript
分享27个jQuery 表单插件集合推荐
2011/04/25 Javascript
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
2011/12/08 Javascript
JavaScript 在网页上单击鼠标的地方显示层及关闭层
2012/12/30 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
js设置cookie过期及清除浏览器对应名称的cookie
2013/10/24 Javascript
js改变文章字体大小的实例代码
2013/11/27 Javascript
Highcharts使用简例及异步动态读取数据
2015/12/30 Javascript
最细致的vue.js基础语法 值得收藏!
2016/11/03 Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
2017/01/24 Javascript
elementUi vue el-radio 监听选中变化的实例代码
2019/06/28 Javascript
微信小程序实现定位及到指定位置导航的示例代码
2019/08/20 Javascript
如何在postman测试用例中实现断言过程解析
2020/07/09 Javascript
解决echarts echarts数据动态更新和dataZoom被重置问题
2020/07/20 Javascript
python实现字符串和日期相互转换的方法
2015/05/13 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
python求最大值最小值方法总结
2019/06/25 Python
使用python从三个角度解决josephus问题的方法
2020/03/27 Python
Python数据可视化实现多种图例代码详解
2020/07/14 Python
Python生成器generator原理及用法解析
2020/07/20 Python
英国二手iPhone、音乐、电影和游戏商店:musicMagpie
2018/10/26 全球购物
Yahoo-PHP面试题3
2012/01/14 面试题
应届生服务员求职信
2013/10/31 职场文书
工厂保洁员岗位职责
2013/12/04 职场文书
人民教师求职自荐信
2014/03/12 职场文书
主办会计岗位职责
2014/03/13 职场文书
禁止高声喧哗的标语
2014/06/11 职场文书
2015年人事科工作总结
2015/04/28 职场文书
餐饮服务食品安全承诺书
2015/04/29 职场文书
幼儿园亲子活动感想
2015/08/07 职场文书
干货干货!2019最新优秀创业计划书
2019/03/21 职场文书
Python Flask搭建yolov3目标检测系统详解流程
2021/11/07 Python