mock数据(自己写的数据)
文章目录
- 前言
- 一、准备工作
- 二、使用步骤
- 1.引入包
- 2.创建文件
- 3.编写和数据
- 4.入口引入
- 5.发送请求
- 6.项目使用
- 总结
前言
mock是什么?
Mock简单来理解,就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试。而这个虚拟的对象就是mock对象。mock对象就是真实对象在调试期间的代替品。
一、准备工作
首先需要准备一个vue的项目
- 先打开需要创建项目的文件夹下方输入cmd打开窗口
- 在窗口输入vue create 项目的名称
- 选择使用版本
- 等待创建,完成后进入文件夹内部在控制台输入npm run serve
二、使用步骤
1.引入包
在终端输入
npm i mockjs@1.1.0 --save
2.创建文件
在src下创建文件夹mock,在该文件夹下创建,在同级目录创建两个自己的json:
├── mock
├──
└──
└──
3.编写和数据
实例代码如下:
// 该文件用于模拟虚拟资源
// 引入mockjs
import Mock from 'mockjs'
// 引入JSON文件,不需要对外暴露
import demo01 from './'
import demo02 from './'
// mock数据 第一个个参数是请求的地址,第二个参数是你请求数据
('/mock/demo01', {
code: 200,
data: demo01
})
('/mock/demo02', {
code: 200,
data: demo02
})
参考数据:
[
{
"id": "1",
"imgUrl": "/images/"
},
{
"id": "2",
"imgUrl": "/images/"
},
{
"id": "3",
"imgUrl": "/images/"
},
{
"id": "4",
"imgUrl": "/th/id/OIP-C.5ALcarpnOz8YbT1uBA6c3QHaLG?w=182&h=273&c=7&r=0&o=5&dpr=1.25&pid=1.7"
},
{
"id": "5",
"imgUrl": "/th/id/OIP-C.CGH_mffKOftvP4g_9KxEIQHaLH?w=182&h=273&c=7&r=0&o=5&dpr=1.25&pid=1.7"
},
{
"id": "6",
"imgUrl": "/th/id/OIP-C.ZJxGeT0cpQybqU-41gm1nQAAAA?w=182&h=273&c=7&r=0&o=5&dpr=1.25&pid=1.7"
}
]
需要在public文件夹下创建一个images的文件夹,里面保存我们所需的图片,也可以采用图像的地址
4.入口引入
我们需要在入口文件引入,让mock的数据执行一次
// 引入mock数据
import './mock/'
5.发送请求
发送请求我们需要使用axios,所以我们先下载所需的包
npm i axios@0.26.1
在src新建一个api文件夹,在该文件夹下创建来进行封装
import axios from 'axios'
const service = ({
baseURL: '/mock',
timeout: 5000,
withCredentials: false // 表示跨域请求时是否需要使用凭证
})
// 请求拦截器
(
config => config,
(error) => {
(error)
return (error)
}
)
// 响应拦截器
(
response => ,
(error) => {
('err' + error)
return (error)
}
)
export default service
接下来可以利用封装好的axios编写请求,在api文件夹下创建文件,书写内容
// mock的数据
import request from './'
// 获取图片列表
export function reqImgList() {
return request({
url: '/demo01',
method: 'get'
})
}
6.项目使用
简单在文件使用一下
<template>
<div >
<img class="images" :src="" v-for="(i, index) in img" :key="index" />
</div>
</template>
<script>
import { reqImgList } from './api/'
export default {
name: 'App',
data() {
return {
img: []
}
},
methods: {
async reqImgList() {
const res = await reqImgList()
if ( == 200) {
=
()
}
}
},
mounted() {
()
}
}
</script>
<style>
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
.images{
width: 400px;
}
</style>
总结
以上就是今天要讲的内容,本文仅仅简单介绍了mock的使用,针对自己书写的数据,如果采用mock自带的生成数
据参考:/The_more_more/article/details/124202585