vue axios整合使用全攻略


Posted in Javascript onMay 24, 2018

惯例先安装axios,不多说!

cnpm install axios

1.axios配置

 我的目录结构src/axios/index.js,axios配置都在该文件下

src/axios/index.js 如下:

import axios from 'axios'
import qs from 'qs'
// axios 配置
axios.defaults.timeout = 5000;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
axios.defaults.baseURL = 'http://localhost:8008';

拦截器,axios.interceptors.request.use发送请求前处理

axios.interceptors.response.use接受返回后,回调之前处理处理

//POST传参序列化
axios.interceptors.request.use((config) => {
 if(config.method === 'post'){
  config.data = qs.stringify(config.data);
 }
 return config;
},(error) =>{
 return Promise.reject(error);
});
//返回状态判断
axios.interceptors.response.use((res) =>{
 if(!res.data.success){
  return Promise.reject(res);
 }
 return res;
}, (error) => {
 //404等问题可以在这里处理
 return Promise.reject(error);
});

公共方法:

export function fetch(url, params) {
 return new Promise((resolve, reject) => {
  axios.post(url, params)
   .then(response => {
    resolve(response.data);
   }, err => {
    reject(err);
   })
   .catch((error) => {
    reject(error)
   })
 })
}

业务方法:

export default {
 getAddressJson() {
  return fetch('/address/',{addressId:1})
 }
}

如果不理解可以将以上代码依次copy到src/axios/index.js文件,当然axios.defaults.baseURL = 'http://localhost:8008'; 需要换成自己的api。

2全局注册axios

为了使用axios,在各个组件中引入就可以使用:

import axios from './axios'

但是使用这种方法我们需要在每一个组件中去引入,有些麻烦,下面我们介绍一种全局注册的方法。

在main.js中:

import axios from './axios'
Vue.prototype.$axios = axios

添加这两行代码,将 axios 改写为 Vue 的原型属性,这样在各个组件中都可以使用axios,具体方法如下:

submitForm () {    
   this.$axios.getAddressJson().then(function (res) {
  //成功之后处理逻辑
    console.log(res)
   },function (res) {
    //失败之后处理逻辑
    console.log("error:"+res)
   })
  }

总结

以上所述是小编给大家介绍的vue axios整合使用全攻略,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript 操作键盘的Enter事件(键盘任何事件),兼容多浏览器
Oct 11 Javascript
jquery实现textarea输入字符控制(仿微博输入控制字符)
Apr 26 Javascript
一个JavaScript操作元素定位元素的实例
Oct 29 Javascript
分享一个自己写的简单的javascript分页组件
Feb 15 Javascript
javascript解三阶幻方(九宫格)
Apr 22 Javascript
jquery.cookie实现的客户端购物车操作实例
Dec 24 Javascript
js+html5实现的自由落体运动效果代码
Jan 28 Javascript
angularJS开发注意事项
May 26 Javascript
Vue项目服务器部署之子目录部署方法
May 12 Javascript
ES6 Array常用扩展的应用实例分析
Jun 26 Javascript
js设置默认时间跨度过程详解
Jul 17 Javascript
Vue 自定义指令功能完整实例
Sep 17 Javascript
vue路由拦截及页面跳转的设置方法
May 24 #Javascript
使用Vue自定义指令实现Select组件
May 24 #Javascript
详解Vue单元测试case写法
May 24 #Javascript
微信小程序通过保存图片分享到朋友圈功能
May 24 #Javascript
karma+webpack搭建vue单元测试环境的方法示例
May 24 #Javascript
react实现点击选中的li高亮的示例代码
May 24 #Javascript
浅谈Webpack 是如何加载模块的
May 24 #Javascript
You might like
漂亮但不安全的CTB
2006/10/09 PHP
php桌面中心(二) 数据库写入
2007/03/11 PHP
FleaPHP的安全设置方法
2008/09/15 PHP
PHP 木马攻击防御技巧
2009/06/13 PHP
php 邮件发送问题解决
2014/03/22 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
JQuery 小练习(实例代码)
2009/08/07 Javascript
学习ExtJS Panel常用方法
2009/10/07 Javascript
js 禁用只读文本框获得焦点时的退格键
2010/04/25 Javascript
浅析jQuery中常用的元素查找方法总结
2013/07/04 Javascript
javascript事件冒泡详解和捕获、阻止方法
2014/04/12 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
javascript面向对象之定义成员方法实例分析
2015/01/13 Javascript
tuzhu_req.js 实现仿百度图片首页效果
2015/08/11 Javascript
jquery uploadify如何取消已上传成功文件
2017/02/08 Javascript
Vue如何引入远程JS文件
2017/04/20 Javascript
用React实现一个完整的TodoList的示例代码
2017/10/30 Javascript
vue-router+nginx 非根路径配置方法
2018/06/30 Javascript
详解性能更优越的小程序图片懒加载方式
2018/07/18 Javascript
详解如何给React-Router添加路由页面切换时的过渡动画
2019/04/25 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
jQuery实现鼠标滑动切换图片
2020/05/27 jQuery
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
python3使用SMTP发送HTML格式邮件
2018/06/19 Python
python实现字符串中字符分类及个数统计
2018/09/28 Python
Python 实现数据结构-堆栈和队列的操作方法
2019/07/17 Python
Python利用神经网络解决非线性回归问题实例详解
2019/07/19 Python
在Python中字符串、列表、元组、字典之间的相互转换
2019/11/15 Python
Python字典底层实现原理详解
2019/12/18 Python
关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题
2020/11/24 Python
python定义具名元组实例操作
2021/02/28 Python
HTML5 Canvas实现玫瑰曲线和心形图案的代码实例
2014/04/10 HTML / CSS
Trip.com澳大利亚:在线旅行社
2019/12/01 全球购物
主管竞聘书范文
2014/03/31 职场文书
2014年中秋节活动总结
2014/08/29 职场文书
Nginx的基本概念和原理
2022/03/21 Servers