7. Vue3中封装axios

开发与上线时,接口不变,域名不同,可创建实例对象,把路径写进去

可以向axios传递相关配置来创建请求,Axios API参考如下

Axios API | Axios 中文文档 | Axios 中文网

1. 使用npm安装axios

npm install axios

2. 建立request文件夹与相关js文件,封装axios请求

 3. 先完成封装,将要使用的axios实例写成一个js文件,index.js完整代码如下

      instance-service

// 封装到这里
import axios from "axios";   // 1. 引入axios

let service=axios.create({   // 2. 创建实例
    baseURL:"http://localhost:3000/",  // 3. 基础路径,后面调用只写接口即可
    timeout:3000                       // 4. 返回时间
})

export default service  // 5. 导出实例,在其他地方引入使用

4. 获取首页轮播图数据,home.js完整代码如下

import service from "..";   // 1. 引入  ..出去直接拿到request,拿index.js

// 获取首页轮播图的数据          // 有参数在这里传入即可
export function getBanner(){   // 2. 要用到getBanner方法,后面去用的地方先引入   
    return service({           // 3. 这个函数相当于执行axios,即这个实例
        method:"GET",
        url:"banner?type=2",  // 4. 在TopSwiper中调用,调用就要返回,所以function前加export
    })                        //    在这里引入,然后使用
}

5. 在我们需要进行aixos请求的地方进行使用,编写TopSwpier.vue

//  接home.js,先引入   onMounted
import { getBanner } from '@/request/api/home';

6. 改写onMounted方法

onMounted(async()=>{       // 更改后的方法  async await 等待数据返回
        let res = await getBanner();
        state.images=res.data.banners
        console.log(res);
       })

7. 项目重新启动,结果如下

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值