vue使用mock进行后端数据模拟

26 篇文章 1 订阅
13 篇文章 1 订阅

我们从头开始,教你一步一步使用mock进行后端数据模拟。

1、首先我们创建vue项目:

通过vue create test_mock命令:

我们这里选择第三个:Manually select features,回车

 这里通过键盘上的上下键上下移动,通过空格键选择。我们选择Babel,Router, Vuex这三个。

这里选择3.x 回车。

 这里选择Y,回车。

 这里选择默认回车。

 这里还是n,回车。

最后项目创建完成。

 我们通过cd test_mock进入项目,通过npm run serve启动项目。

启动后的项目如下图:

 2、我们按ctrl+c键终止项目。

终端安装依赖:npm install mockjs。

 再通过命令:cnpm i axios -S安装axios。

其原理如下图所示:

 

 然后,我们在目录src文件下新建文件 --mock--mock.js。

如下图:

mock.js代码如下:

import Mock from 'mockjs'


let random = Mock.Random
random.extend({
    constellation:function(date) {
        var constellation = ['天秤座','双子座','处女座','白羊座','金牛座','巨蟹座','狮子座','天蝎座'];
        return this.pick(constellation)
    }
})


Mock.mock('http://localhost:8080/user', {
    'name':'@name',
    'email':"@email",
    'age|1-10':5,
    'introduce': random.province(),
    'constellation': '@CONSTELLATION'
})

数据规范:Mock.mock('需要拦截的请求', { '属性名|生成规则': 属性值 })    /*生成规则可选*/

数据占位符:

用 @来标识其后的字符串是 占位符

占位符 引用的是 Mock.Random 中的方法。

Mock.Random 的方法在数据模板中称为『占位符』

3、需要数据模拟的页面AboutView.vue。位置在:src/views/AboutView.vue。

AboutView.vue代码如下:

<template>
    <div>
        <h1>我是About</h1>
        <button @click="getUser()">点击获取用户信息</button>
    </div>
</template>

<script>
import axios from 'axios'
import mock from '@/mock/mock.js'
export default {
    name:'About',
    methods: {
        getUser() {
            axios.get('http://localhost:8080/user')
            .then(function(res) {
                console.log(JSON.stringify(res.data))
            })
            .catch(function(res) {
                alert(res)
            })
        }
    }
}
</script>

 启动项目后,mock 会根据请求 url 拦截对应请求并返回模拟数据:

 

 

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值