最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何用vue封裝axios請(qǐng)求

 更新時(shí)間:2021年06月04日 11:15:22   作者:馬瀟楠  
對(duì)axios進(jìn)行封裝以及將API接口按業(yè)務(wù)模塊統(tǒng)一管理,有助于我們簡(jiǎn)化代碼,方便后期維護(hù)。本文介紹了如何用vue封裝axios請(qǐng)求,感興趣的同學(xué),可以參考下。

其實(shí)vue封裝axios是很簡(jiǎn)單的

首先 在src路徑下建http文件夾 并且創(chuàng)建api.js env.js request.js 這三個(gè)文件

env.js文件

這個(gè)文件主要就是封裝我們的公共地址

export default {
// 開發(fā)環(huán)境
dev: {
    baseUrl: "開發(fā)環(huán)境公共地址"
},
//   測(cè)試環(huán)境test
test: {
    baseUrl: "測(cè)試環(huán)境公共地址"
},
//線上接口
prod: {
    baseUrl: "線上環(huán)境公共地址"
}
};

request.js 文件

這里主要就是創(chuàng)建axios 以及封裝請(qǐng)求攔截和相應(yīng)攔截

import axios from "axios";
import env from "./env";
//這里是私有域名  但是也可以不寫
var vipUrl = "/app";
// 創(chuàng)建axios實(shí)例

const service = axios.create({
//這里拿線上接口測(cè)試
baseUrl: env.prod.baseUrl + vipUrl,
    headers:{},//請(qǐng)求頭
    settimeout:2000,//超時(shí)時(shí)間
});
// 添加請(qǐng)求攔截器
service.interceptors.request.use(
config => {
    // 在發(fā)送請(qǐng)求之前做些什么
    config.headers["deviceType"] = "H5";
    console.log("請(qǐng)求的數(shù)據(jù):", config);
    return config;
},
error => {
    // 對(duì)請(qǐng)求錯(cuò)誤做些什么
    return Promise.reject("出錯(cuò)", error);
}
);

// 添加響應(yīng)攔截器
service.interceptors.response.use(
response => {
    // 對(duì)響應(yīng)數(shù)據(jù)做點(diǎn)什么
    // console.log("返回的數(shù)據(jù)", response);
    return response;
},
error => {
    // 對(duì)響應(yīng)錯(cuò)誤做點(diǎn)什么
    return Promise.reject(error);
}
);
export default service;

api.js

這個(gè)文件中主要是需要的接口地址

//引入request.js文件
import request from "./request";

// 輪播
export function getBanners(data) {
return request({
    url: "/banner",//這個(gè)地址是去掉公共地址和私有域名之后剩下的地址
    method: "GET",//請(qǐng)求方式 支持多種方式  get post put delete 等等
    data//發(fā)送請(qǐng)求要配置的參數(shù) 無(wú)參數(shù)的情況下也可以不寫
});
}

最后是在頁(yè)面中的引用

那個(gè)頁(yè)面需要請(qǐng)求數(shù)據(jù) 就引入相應(yīng)的方法 比如我的首頁(yè)需要引入banner

<script>
//引入需要的接口
import { getBanners } from "../http/api";
export default {
name: "Home",
components: {},
mounted() {
    //直接使用 .then 是請(qǐng)求成功的回調(diào) .catch是請(qǐng)求失敗的回調(diào)
    getBanners()
    .then(result => {
        window.console.log("111", result);
    })
    .catch(err => {
        window.console.log("222", err);
    });
},
methods: {}
};
</script>

以上就是如何用vue封裝axios請(qǐng)求的詳細(xì)內(nèi)容,更多關(guān)于用vue封裝axios請(qǐng)求的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vuecli項(xiàng)目構(gòu)建SSR服務(wù)端渲染的實(shí)現(xiàn)

    vuecli項(xiàng)目構(gòu)建SSR服務(wù)端渲染的實(shí)現(xiàn)

    這篇文章主要介紹了vuecli項(xiàng)目構(gòu)建SSR服務(wù)端渲染的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • vue-element-admin開發(fā)教程(v4.0.0之前)

    vue-element-admin開發(fā)教程(v4.0.0之前)

    本文主要介紹了vue-element-admin開發(fā)教程(v4.0.0之前),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Vue3父子通訊方式及Vue3插槽的使用方法詳解

    Vue3父子通訊方式及Vue3插槽的使用方法詳解

    這篇文章主要介紹了Vue3父子通訊方式及Vue3插槽的使用方法詳解,需要的朋友可以參考下
    2023-01-01
  • Vue實(shí)現(xiàn)下拉滾動(dòng)加載數(shù)據(jù)的示例

    Vue實(shí)現(xiàn)下拉滾動(dòng)加載數(shù)據(jù)的示例

    這篇文章主要介紹了Vue實(shí)現(xiàn)下拉滾動(dòng)加載數(shù)據(jù)的示例,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-04-04
  • 詳解用vue-cli來(lái)搭建vue項(xiàng)目和webpack

    詳解用vue-cli來(lái)搭建vue項(xiàng)目和webpack

    本篇文章主要介紹了詳解用vue-cli來(lái)搭建vue項(xiàng)目和webpack,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • 深入理解vuex2.0 之 modules

    深入理解vuex2.0 之 modules

    本篇文章主要介紹了vuex2.0 之 modules,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • Vue?element?ui用戶展示頁(yè)面的實(shí)例

    Vue?element?ui用戶展示頁(yè)面的實(shí)例

    這篇文章主要介紹了Vue?element?ui用戶展示頁(yè)面的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue常用事件v-on:click詳解事件對(duì)象,事件冒泡,事件默認(rèn)行為

    vue常用事件v-on:click詳解事件對(duì)象,事件冒泡,事件默認(rèn)行為

    這篇文章主要介紹了vue常用事件之v-on:click?以及事件對(duì)象,事件冒泡,事件默認(rèn)行為,其實(shí)v-on后面跟的不止是click事件也可以是其他的事件,用法均相似,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • vue實(shí)現(xiàn)移動(dòng)端多格輸入框

    vue實(shí)現(xiàn)移動(dòng)端多格輸入框

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)移動(dòng)端多格輸入框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • vue3.0之Router的使用你了解嗎

    vue3.0之Router的使用你了解嗎

    這篇文章主要為大家詳細(xì)介紹了vue3.0之Router的使用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03

最新評(píng)論

灵璧县| 兴安盟| 鹰潭市| 临邑县| 锡林郭勒盟| 仙居县| 新营市| 连江县| 铁岭市| 夏津县| 邹城市| 仁布县| 托克逊县| 崇仁县| 西畴县| 巍山| 东乡县| 体育| 开化县| 繁峙县| 鄯善县| 阜新| 旺苍县| 凌云县| 元朗区| 彰化市| 新余市| 兴化市| 筠连县| 孟津县| 玉环县| 宁明县| 永胜县| 枣庄市| 富阳市| 涪陵区| 磐安县| 连南| 新邵县| 绥中县| 罗定市|