码迷,mamicode.com
首页 > 移动开发 > 详细

vue---axios的封装

时间:2019-10-05 22:37:14      阅读:305      评论:0      收藏:0      [点我收藏+]

标签:vue   code   alt   url   img   直接   rom   png   class   

//新建一个文件夹network---request.js
import axios from ‘axios‘ //config接口参数,函数1(成功后的回调将数据返回给引用者),函数2(将错误返回给引用者) export function request(config, success, failure){ //创建实例--配置 const instance = axios.create({ baseURL: ‘地址‘, timeout: 5000 }) //发送真正的网路请求--引用配置 instance(config) .then(res => { //将获取到的数据返回给引用者--通过success函数 success(res) }) .catch(err => { failure(err) }) }

引用、

//封装request模块
//引入
import {request} from "./network/request"

request({
    url: ‘api接口‘
}, res=> {
    console.log(res);
}, err =>{
    console.log(err);
})

 建议 引用  promise异步操作

import axios from ‘axios‘

export function request(config){
return new Promise((resolve, reject) => {
    //创建实例--配置
const instance = axios.create({
    baseURL: ‘地址‘,
    timeout: 5000
})
//发送真正的网路请求--引用配置
instance(config)
    .then(res => {
        //将获取到的数据返回给引用者--通过resolve函数
        resolve(res)
    })
    .catch(err => {
        reject(err)
    })
})
}

其实这里的

instance(config)
    .then(res => {
        //将获取到的数据返回给引用者--通过resolve函数
        resolve(res)
    })
    .catch(err => {
        reject(err)
    })
})
可以简化直接写 return instance(config)
因为
axios.create就直接调用的promise的接口
不用再包装了
当然
return new Promise((resolve, reject) => {}----也应删除

技术图片


调用

request({
    url: ‘‘,
}).then(res => {

}).catch(err => {
    
})

  

vue---axios的封装

标签:vue   code   alt   url   img   直接   rom   png   class   

原文地址:https://www.cnblogs.com/fdxjava/p/11625762.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!