vue中将axios封装

在平时写项目中,经常会遇到组件调用同一个接口或者不同接口

import axios from "axios"

axios({
        url: "https://autumnfish.cn/mv/url",
        params: {
          //   接收传来的MVid
          id: this.$route.query.id,
        },
      }).then(({ data: { data } }) => {
        this.mvUrl = data.url;
      });

这样代码非常冗余,如果axios哪天不维护就要把每个用到axios组件一个个更改

解决方法就是将axios封装进单独文件,然后需要调用接口接按需引入这个文件在的不同接口方法

1.创建app.js文件

可以配置更多默认项,这里用baseURL示例

import axios from "axios";
//接口1
export function requestWyy(config) {
  const instance = axios.create({
    baseURL: "https://autumnfish.cn",
  });
  return instance(config);
}
//接口2
export function requestWyy2(config) {
  const instance = axios.create({
    baseURL: "https://autumn1fish.cn",
  });
  return instance(config);

这里没有用默认暴露是因为可能要调取不同接口,就不能调用另外的方法了

2.按需引入

import { requestWyy } from "../request/app";
 requestWyy({
      url: "/banner",
    }).then((res) => {
      this.bannersImg = res.data.banners;
    });

一个组件中需要调用哪个接口接引入哪个封装的实例

优点

更好维护,直接改app,js文件里的方法就行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值