【前端】---- axios简易二次封装

1. 为什么要二次封装axios

api 统一管理,不管接口有多少,所有的接口都可以非常清晰,容易维护.

2. 操作步骤

2.1 包含的文件

  • /api/http.js …… axios基础设置
  • /api/request.js……大量请求接口设置
  • /src/home/index.vue …… 使用axios封装的页面

安装axios
npm install axios

2.2 文件内容填写

  • (1)/api/http.js配置
// 引入axios
import axios from 'axios'

// 设置基础路由
const http = axios.create({
    baseURL: "http://127.0.0.1:4523/m1/1475785-0-default",
    timeout: 6000,
})
// 请求拦截
http.interceptors.request.use(config => {
     return config  // ★★此处后期可以设置token的对比
}, err => {
    console.log(err);
})
// 响应拦截
http.interceptors.response.use(res => {
    // 对响应码的处理
     return res
}, err => {
    console.log(err);
})
// 暴露
export default http
  • (2) /api/request.js配置
/ 封装请求参数
import http from './http.js'
 //下面是简写的形式
 // getHomeData 自定义的接口名字
 // 1. get无参数情况
 export const getHomeNoData = (params) => http.get('/api/home/echart',{params:params})
 // get由query参数情况
 export const getHomeHasData = (params) => http.get('/api/home/echart',{params:params})


 // 2. post请求
 export const postHomeData = (bodydata) => http.post('/api/home/login',bodydata)

注:
① 此处要注意get的query参数,要以{params:{id=888}}的形式
② 注意post请求,后面的参数是请求体 与params无关

  • (3)/src/home/index.vue配置
<template>
<div ref="polyline" style="width:520px;height:180px"></div>
</template>
<script>
	// echarts模块引入
	import * as echarts from 'echarts'
	// ★★引入带query参数的get请求
	import {getHomeData} from '../../../api/request'
	mounted(){
      getHomeData({heroid:66}).then(response=>{ 
        console.log('请求成功了!',response)
        // 获取请求数据
        const echartData = response.data
        // 通过$refs获取DOM,并将初始化后,加入获取的数据,变成想要的图表
        var myChart = echarts.init(this.$refs.polyline)
         myChart.setOption(echartData)
        })
          }
<script>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值