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

vue項(xiàng)目中如何使用mock你知道嗎

 更新時(shí)間:2021年11月21日 16:26:44   作者:唐小亭  
這篇文章主要為大家介紹了vue項(xiàng)目如何使用mock,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助

Mock.js 是一款模擬數(shù)據(jù)生成器,旨在幫助前端攻城師獨(dú)立于后端進(jìn)行開發(fā),幫助編寫單元測(cè)試。提供了以下模擬功能:

  • 根據(jù)數(shù)據(jù)模板生成模擬數(shù)據(jù)
  • 模擬 Ajax 請(qǐng)求,生成并返回模擬數(shù)據(jù)
  • 基于 HTML 模板生成模擬數(shù)據(jù)

第一步:

npm install mockjs // 安裝mockjs
npm install axios

第二步,在request.js中進(jìn)行相關(guān)配置,request.js代碼如下:

import axios from 'axios'
// axios.defaults.headers.post['Content-Type'] = 'application/x-www-urlencoded'
const http = axios.create()
 http.defaults.timeout = 3000
 http.interceptors.request.use(config => { // 請(qǐng)求攔截器配置 // 可不配置
    // do sth
    return config
}, error => {
    console.log(error)
    return Promise.reject(error)
})
 http.interceptors.response.use(response => { // 響應(yīng)攔截器配置 // 可不配置
    // do something
    return response
}, error => {
    console.log(error)
    return Promise.reject(error)
})
 export function fetch(url, params) { // 封裝axios的post請(qǐng)求
    return new Promise((resolve, reject) => { // promise 用法,自行查閱
        axios.post(url, params).then(response => {
            resolve(response.data) // promise相關(guān)
        }).catch(error => {
            reject(error) // promise相關(guān)
        })
    })
}
 export default { // 暴露htto_mock方法,即后面頁(yè)面中用到的方法
    http_mock(url, params) {
        return fetch(url, params)
    }
}

第三步,在mock.js中進(jìn)行相關(guān)配置,mock.js代碼如下:

import Mock from 'mockjs'
 const Random = Mock.Random
 var listData = function() {
    let _data = {
        status: 200,
        message: 'success',
        data: {
            total: 100,
            'rows|10': [{
            id: '@guid',
            name: '@cname',
            'age|20-30': 23,
            'job|1': ['前端工程師', '后端工程師', 'UI工程師', '需求工程師']
            }]
        }
    }
    return { _data }
}
// url為要攔截的請(qǐng)求地址  請(qǐng)求方式  請(qǐng)求數(shù)據(jù)(規(guī)則) (此處api會(huì)被mockjs攔截)
Mock.mock('http://route.showapi.com/60-27', 'post', listData())
 

第四步,在main.js中需引入mock.js即可

import mock from '@/http/mock'

第五步,在頁(yè)面中使用

import request from '@/http/request'
 export default {
    name: "FirstPage",
    created() {
        this.getData()
    },
    methods: {
        getData() {
             // 假裝要使用http_mock發(fā)送請(qǐng)求(mock自動(dòng)攔截請(qǐng)求并生成數(shù)據(jù))
         // 此處第一個(gè)參數(shù)需要和Mock.mock()中的第一個(gè)參數(shù)一致
            console.log('請(qǐng)求開始')
            request.http_mock('http://route.showapi.com/60-27','api_id=63114&api_sign=3847b0').then(response => {
            console.log(response._data)
            })
       },
    }
}

效果如下:

總結(jié)

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

相關(guān)文章

最新評(píng)論

民勤县| 射阳县| 泰顺县| 六枝特区| 凤翔县| 通化县| 阿巴嘎旗| 怀仁县| 龙海市| 尤溪县| 长汀县| 大田县| 高平市| 屏边| 农安县| 屯留县| 新和县| 海丰县| 万载县| 宁夏| 介休市| 昌宁县| 荣成市| 汽车| 个旧市| 洪湖市| 海阳市| 虹口区| 贵南县| 昭觉县| 馆陶县| 雅江县| 玉山县| 遵义市| 霍州市| 雷州市| 宕昌县| 厦门市| 贺州市| 梅河口市| 滨州市|