欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue的axios和mock.js你了解嗎

 更新時(shí)間:2022年02月10日 16:02:02   作者:jayLog  
這篇文章主要為大家詳細(xì)介紹了vue的axios和mock.js,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

axios.js

axios是vue中用于發(fā)送ajax(http)請(qǐng)求的工具類

安裝:

npm install axios

全局引入 axios

// main.js
import http from 'axios';
Vue.prototype.$http = http;

通過axios發(fā)送一個(gè)http請(qǐng)求

<script>
// ...
mounted(){
    // 發(fā)送請(qǐng)求
    this.$http.get('./user/ID=123').then(function(success){
        //成功請(qǐng)求區(qū)間
        console.dir(success)
    }).catch(function(error){
        //失敗返回區(qū)間
        console.dir(error)
    })
}
// ...
</script>

封裝一個(gè)簡單的axios包,為axios添加攔截器和判斷允許環(huán)境(用于判斷請(qǐng)求地址)axios.js

注意這部分的攔截器與mockjs是兩回事?。?!

// api/axios.js
import axios from 'axios'
import config from '../config'
const baseUrl =  process.env.NODE_ENV == 'development' ? config.baseUrl.dev : config.baseUrl.pro
class HttpRequest {
    constructor(baseUrl){
        this.baseUrl = baseUrl
    }
    getInsideConfig(){
        const config = {
            baseUrl:this.baseUrl,
            header:{}
        }
        return config
    }
// 攔截器這部分,官網(wǎng)copy過來的,注意這部分的攔截器與mock攔截器是兩回事!??!
    interceptors(instance){
        // 添加請(qǐng)求攔截器
        instance.interceptors.request.use(function (config) {
            // 在發(fā)送請(qǐng)求之前做些什么
            // console.dir(config)
            return config;
        }, function (error) {
            // 對(duì)請(qǐng)求錯(cuò)誤做些什么
            return Promise.reject(error);
        });
        // 添加響應(yīng)攔截器
        instance.interceptors.response.use(function (response) {
            // 對(duì)響應(yīng)數(shù)據(jù)做點(diǎn)什么
            return response;
        }, function (error) {
            // 對(duì)響應(yīng)錯(cuò)誤做點(diǎn)什么
            console.dir(error,'error')
            return Promise.reject(error);
        });
    }
	// 請(qǐng)求方法
    request(options){
        const instance = axios.create()
        options = {...this.getInsideConfig, ...options}
        this.interceptors(instance)
        return instance(options)
    }
}
export default new HttpRequest(baseUrl)

使用。添加data.js

// data.js
import axios from './axios'
export const getMenu = (param)=>{
    return axios.request({
        url:'/permission/getMenu',
        method:'post',
        data:param
    })
}
export const test = (param)=>{
    return axios.request({
        // 修改域名
        baseUrl:'https://me.kervi.cn',
        url:'/',
        method:'get',
        data:param
    })
}

mockjs

mockjs可以用于攔截ajax請(qǐng)求,在mock的回調(diào)函數(shù)中可以給請(qǐng)求添加模擬數(shù)據(jù),用于模擬后臺(tái)接口

安裝

npm i mockjs

編寫mockjs攔截文件mock.js

import Mock from 'mockjs'
import homeApi from './mockservice/home'
// Mock.mock('攔截地址',設(shè)置返回?cái)?shù)據(jù)的回調(diào)函數(shù)),攔截 home/getData
Mock.mock('/home/getData', homeApi.getStaticData)

mockservice/home.js

// 簡單模擬一下方法,如果需要文件,請(qǐng)幫我點(diǎn)個(gè)贊,私聊
export default {
     getStatisticalData: () => {
         return {code:200,data:{list:[1,2,3,4,5]}
     }
}

請(qǐng)?zhí)砑訄D片描述

引入mock.js

// main.js 中引入
import '../api/mock.js'

發(fā)送ajax請(qǐng)求,測試攔截

請(qǐng)?zhí)砑訄D片描述

請(qǐng)?zhí)砑訄D片描述

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • vue iview實(shí)現(xiàn)動(dòng)態(tài)新增和刪除

    vue iview實(shí)現(xiàn)動(dòng)態(tài)新增和刪除

    這篇文章主要為大家詳細(xì)介紹了vue iview實(shí)現(xiàn)動(dòng)態(tài)新增和刪除,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • 關(guān)于vue中路由的跳轉(zhuǎn)和參數(shù)傳遞,參數(shù)獲取

    關(guān)于vue中路由的跳轉(zhuǎn)和參數(shù)傳遞,參數(shù)獲取

    這篇文章主要介紹了關(guān)于vue中路由的跳轉(zhuǎn)和參數(shù)傳遞,參數(shù)獲取方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • vue移動(dòng)端路由切換實(shí)例分析

    vue移動(dòng)端路由切換實(shí)例分析

    本篇文章給大家分享了vue移動(dòng)端路由切換實(shí)例以及相關(guān)知識(shí)點(diǎn),對(duì)此有興趣的朋友可以參考學(xué)習(xí)下。
    2018-05-05
  • Element實(shí)現(xiàn)動(dòng)態(tài)增加多個(gè)輸入框并校驗(yàn)

    Element實(shí)現(xiàn)動(dòng)態(tài)增加多個(gè)輸入框并校驗(yàn)

    本文主要介紹了Element實(shí)現(xiàn)動(dòng)態(tài)增加多個(gè)輸入框并校驗(yàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 基于vue2.0的活動(dòng)倒計(jì)時(shí)組件countdown(附源碼下載)

    基于vue2.0的活動(dòng)倒計(jì)時(shí)組件countdown(附源碼下載)

    這是一款基于vue2.0的活動(dòng)倒計(jì)時(shí)組件,可以使用服務(wù)端時(shí)間作為當(dāng)前時(shí)間,在倒計(jì)時(shí)開始和結(jié)束時(shí)可以自定義回調(diào)函數(shù)。這篇文章主要介紹了基于vue2.0的活動(dòng)倒計(jì)時(shí)組件countdown,需要的朋友可以參考下
    2018-10-10
  • vue如何獲取當(dāng)前url地址加端口號(hào)

    vue如何獲取當(dāng)前url地址加端口號(hào)

    這篇文章主要介紹了vue如何獲取當(dāng)前url地址加端口號(hào)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Vue數(shù)據(jù)驅(qū)動(dòng)模擬實(shí)現(xiàn)1

    Vue數(shù)據(jù)驅(qū)動(dòng)模擬實(shí)現(xiàn)1

    這篇文章主要介紹了Vue數(shù)據(jù)驅(qū)動(dòng)模擬實(shí)現(xiàn)的相關(guān)資料,允許采用簡潔的模板語法聲明式的將數(shù)據(jù)渲染進(jìn)DOM,且數(shù)據(jù)與DOM綁定在一起,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Vue組件開發(fā)技巧總結(jié)

    Vue組件開發(fā)技巧總結(jié)

    這篇文章通過代碼示例給大家詳細(xì)分析了Vue組件開發(fā)的相關(guān)技巧以及知識(shí)點(diǎn),對(duì)此有需要的讀者們參考下吧。
    2018-03-03
  • vue中三種調(diào)用接口的方法

    vue中三種調(diào)用接口的方法

    這篇文章主要介紹了vue中三種調(diào)用接口的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue3中的ref與reactive使用方法對(duì)比

    vue3中的ref與reactive使用方法對(duì)比

    Vue3 提供了兩個(gè)新的 API:ref 和 reactive,它們可以幫助我們更好地管理和處理響應(yīng)式數(shù)據(jù),這篇文章主要介紹了vue3中的ref與reactive的區(qū)別和使用方法,需要的朋友可以參考下
    2023-04-04

最新評(píng)論