Simon He @ simonhe.me

v-axios

Jul 29 · 2day

Author: Simon

英文 English Version

此文是介绍封装的工具函数的文档@simon_he/v-axios

特点: 扩展性高,调用灵活便捷

更多

使用说明

npm i @simon_he/v-axios # 安装

import { 
  vAxios,
  ...
 } from '@simon_he/v-axios' # 按需引入

目录结构

vAxios

  • 基于axios的封装
const axios = vAxios({
  baseURL: 'http://localhost:3000',
  timeout: 1000,
  headers: {
    'Content-Type': 'application/json',
  },
  interceptor: {
    request(config) {
      console.log(config)
      return config
    },
    response(response) {
      console.log(response)
      return response
    },
    requestError(error) {
      console.log(error)
      return Promise.reject(error)
    },
    responseError(error) {
      console.log(error)
      return Promise.reject(error)
    },
  },
})

axios.get('/api/get', { // get请求可以像其他请求一样传参
  id: 1,
  name: '22',
}, {
  headers: {
    'Content-Type': 'application/json',
  },
}).then((res) => {
  console.log(res)
}).catch((err) => {
  console.log(err)
}).finally(() => {
  console.log('finally')
})

axios.post('/api/get', {
  id: 1,
  name: '22',
}, {
  headers: {
    'Content-Type': 'application/json',
  },
}).then((res) => {
  console.log(res)
}).catch((err) => {
  console.log(err)
}).finally(() => {
  console.log('finally')
})

GitHub

欢迎PR