Mock data模擬服務(wù)端返回數(shù)據(jù)

很早就想總結(jié)下關(guān)于mock data 這部分的內(nèi)容,現(xiàn)在剛好把它總結(jié)一下吧想邦。

首先之前完成的許多項目都是自己獨立完成前端開發(fā)這部分內(nèi)容的峡捡,不過要完成一個完整的包含后端的項目,臣妾做不到阿~~~~~~~(主要是時間也不允許哈哈)所以呢逢捺,這個時候mock data就發(fā)揮它的作用啦~

簡單介紹下mock.js谁鳍,是一款非常強大的插件,可以模擬服務(wù)端的數(shù)據(jù)劫瞳,也可以進行增刪改查這些操作倘潜。

小聲bb:在實際項目開發(fā)過程中,后端完成接口一般較晚柠新,而我們可以使用mock data來模擬數(shù)據(jù)窍荧,這樣可以大大提高效率。

OK恨憎,接下來一起玩轉(zhuǎn)mock吧蕊退!

第一步,當然是在項目中安裝我們的mock插件憔恳,如圖所示瓤荔,這里的axios是為了可以模擬后臺接口。


可以看到輸入“npm install mockjs --save”的時候提示出錯啦钥组。

在我的環(huán)境中也安裝了cnpm输硝,在這里我重新輸入“cnpm install mockjs --save”回車,沒有錯誤程梦,安裝成功点把;接著安裝了axios插件;

好的屿附,安裝成功郎逃。

第二步:建立如圖所示的文件夾axios,并添加api.js文件挺份;以及在components中添加mock.vue文件


創(chuàng)建文件夾+相關(guān)文件

第三步:修改main.js文件


修改main.js文件

第四步:mock.js

import Mock from 'mockjs' // 引入mockjs

const Random = Mock.Random // Mock.Random 是一個工具類褒翰,用于生成各種隨機數(shù)據(jù)

let data = [] // 用于接受生成數(shù)據(jù)的數(shù)組

let size = [

? '300x250', '250x250', '240x400', '336x280',

? '180x150', '720x300', '468x60', '234x60',

? '88x31', '120x90', '120x60', '120x240',

? '125x125', '728x90', '160x600', '120x600',

? '300x600'

] // 定義隨機值

for(let i = 0; i < 10; i ++) { // 可自定義生成的個數(shù)

? let template = {

? ? 'Boolean': Random.boolean, // 可以生成基本數(shù)據(jù)類型

? ? 'Natural': Random.natural(1, 10), // 生成1到100之間自然數(shù)

? ? 'Integer': Random.integer(1, 100), // 生成1到100之間的整數(shù)

? ? 'Float': Random.float(0, 100, 0, 5), // 生成0到100之間的浮點數(shù),小數(shù)點后尾數(shù)為0到5位

? ? 'Character': Random.character(), // 生成隨機字符串,可加參數(shù)定義規(guī)則

? ? 'String': Random.string(2, 10), // 生成2到10個字符之間的字符串

? ? 'Range': Random.range(0, 10, 2), // 生成一個隨機數(shù)組

? ? 'Date': Random.date(), // 生成一個隨機日期,可加參數(shù)定義日期格式

? ? 'Image': Random.image(Random.size, '#02adea', 'Hello'), // Random.size表示將從size數(shù)據(jù)中任選一個數(shù)據(jù)

? ? 'Color': Random.color(), // 生成一個顏色隨機值

? ? 'Paragraph':Random.paragraph(2, 5), //生成2至5個句子的文本

? ? 'Name': Random.name(), // 生成姓名

? ? 'Url': Random.url(), // 生成web地址

? ? 'Address': Random.province() // 生成地址

? }

? data.push(template)

}

Mock.mock('/data/index', 'post', data) // 根據(jù)數(shù)據(jù)模板生成模擬數(shù)據(jù)

第五步:api.js

import axios from 'axios'

axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'

// 請求攔截器

axios.interceptors.request.use(function(config) {

? ? return config;

? }, function(error) {

? ? return Promise.reject(error);

? })

? // 響應(yīng)攔截器

axios.interceptors.response.use(function(response) {

? return response;

}, function(error) {

? return Promise.reject(error);

})

// 封裝axios的post請求

export function fetch(url, params) {

? return new Promise((resolve, reject) => {

? ? axios.post(url, params)

? ? ? .then(response => {

? ? ? ? resolve(response.data);

? ? ? })

? ? ? .catch((error) => {

? ? ? ? reject(error);

? ? ? })

? })

}

export default {

? mockdata(url, params) {

? ? return fetch(url, params);

? }

}

第六步:mock.vue
<template>

? <div>

? </div>

</template>

<script>

import api from './../axios/api.js'

export default {

? name: 'Mock',

? data () {

? ? return {

? ? ? dataShow: []

? ? }

? },

? created () {

? ? this.getdata()

? },

? methods: {

? ? getdata: function() {

? ? ? api.mockdata('/data/index')

? ? ? .then(res => {

? ? ? ? console.log(res);

? ? ? ? this.dataShow = res.data;

? ? ? })

? ? }

? }

}

</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->

<style scoped>

</style>

基本上就可以滿足開發(fā)的需要了~~~~挖個坑得空再來補充+完善。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末匀泊,一起剝皮案震驚了整個濱河市优训,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌各聘,老刑警劉巖揣非,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異伦吠,居然都是意外死亡妆兑,警方通過查閱死者的電腦和手機魂拦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來搁嗓,“玉大人芯勘,你說我怎么就攤上這事∠俟洌” “怎么了荷愕?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長棍矛。 經(jīng)常有香客問我安疗,道長,這世上最難降的妖魔是什么够委? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任荐类,我火速辦了婚禮,結(jié)果婚禮上茁帽,老公的妹妹穿的比我還像新娘玉罐。我一直安慰自己,他們只是感情好潘拨,可當我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布吊输。 她就那樣靜靜地躺著,像睡著了一般铁追。 火紅的嫁衣襯著肌膚如雪季蚂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天琅束,我揣著相機與錄音扭屁,去河邊找鬼。 笑死涩禀,一個胖子當著我的面吹牛疯搅,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播埋泵,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼罪治!你這毒婦竟也來了丽声?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤觉义,失蹤者是張志新(化名)和其女友劉穎雁社,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晒骇,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡霉撵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年磺浙,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片徒坡。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡撕氧,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出喇完,到底是詐尸還是另有隱情伦泥,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布锦溪,位于F島的核電站不脯,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏刻诊。R本人自食惡果不足惜防楷,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望则涯。 院中可真熱鬧复局,春花似錦、人聲如沸是整。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽浮入。三九已至龙优,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間事秀,已是汗流浹背彤断。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留易迹,地道東北人宰衙。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像睹欲,于是被迫代替她去往敵國和親供炼。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,601評論 2 353