1.安装vite-plugin-mock
npm i axios mockjs -s
npm i cross-env vite-plugin-mock -D
2.在根目录创建mock文件夹,然后添加helloWorld.ts 文件(注意是ts文件,需要js的写法自行转换)
import { MockMethod } from 'vite-plugin-mock' export default [ { url: '/helloWorld', // 注意,这里只能是string格式 method: 'get', response: ({ query }:any) => { console.log(query) return 'hello world' } } ] as MockMethod[] // 这里其实就是定义数据格式的,不了解的同学可以参考typescript的官方文档
3.根目录创建的mock文件夹目录下创建index.ts
文件
import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer' import HelloWorld from './helloWorld' //引入定义的mock模拟接口 export function setupMock () { // 这个是用来注册mock的,当在生产中使用mock时,很重要 createProdMockServer([...HelloWorld]) }
4.vite.config.js
文件配置
import { viteMockServe } from 'vite-plugin-mock' import vue from '@vitejs/plugin-vue' export default ({ command }) => { return { plugins: [ vue(), viteMockServe({ mockPath: 'mock', //解析根目录下的mock文件夹 localEnabled: command === 'serve', //开发打包开关 prodEnabled: command !== 'serve' ,// 生产打包开关 supportTs: true, // 打开后,可以读取 ts 文件模块。 请注意,打开后将无法监视.js 文件。 //这样可以控制关闭mock的时候不让mock打包到最终代码内 injectCode: ` import { setupMock } from '../mock'; setupMock(); `, }), ], } }
5.本地mock
删除vite.config.js
中viteMockServe
配置下的injectCode
和prodEnabled
选项,或将prodMock = false
在main.js
中添加
import { setupMock } from '../mock'; //mock if(import.meta.env === 'development'){ //dev环境开启mock setupMock() }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)