Mock 基础作用
- 前后端项目同时开发,后端接口并未出来时,可以使用mock来进行数据模拟。
- 进行ajax请求拦截
安装
npm i mockjs
Mock模拟数据
export default {
getUserData: () => {
return {
code: 200,
data: {
user: {
avatar: '/avatar.webp',
username: 'Weko',
nickname: 'Weko',
},
},
};
},
};
Mock配置
import Mock from 'mockjs';
import userApi from './mockData/user.ts';
import getMessageApi from './mockData/messagePrompt.ts';
Mock.mock('/api/home/getData', userApi.getUserData);
Mock.mock('/api/navbar/getMessageData', getMessageApi.getMessageData);
引入Mock
import './mock/mock';
项目中使用Mock
- Api文件中封装接口
import request from './request';
export const login = () => {
return request({
url: '/home/getData',
method: 'get',
});
};
export const getMessageData = () => {
return request({
url: '/navbar/getMessageData',
method: 'get',
});
};
- vue文件中使用接口
<script setup lang="ts">
import { login, getMessageData } from '@/api/user.ts'
const userList = ref<User>({
avatar: '',
username: '',
nickname: '',
})
const messageList = ref<string[]>([])
onMounted(() => {
// Get user information and message data
login().then(res => {
userList.value = res.data.data.user
})
// Get message data
getMessageData().then(res => {
messageList.value = res.data.data.tableData
})
})
</script>