关于mock插件引入
环境版本
"vue": "3.2.26"
"vite": "2.6.14"
1.安装依赖
npm install mockjs -S
npm install vite-plugin-mock -S
2.配置vite.config.js
import { defineConfig, loadEnv } from 'vite' import path from 'path' import createVitePlugins from './vite/plugins' import { viteMockServe } from 'vite-plugin-mock' // https://vitejs.dev/config/ export default defineConfig(({ mode, command }) => { const env = loadEnv(mode, process.cwd()); const plugins = createVitePlugins(env, command === 'build'); plugins.push(viteMockServe({ mockPath: "mock",// 解析根目录下的mock文件夹 localEnabled: env.VITE_USE_MOCK_ENV === 'true', // 开发打包开关 prodEnabled: env.VITE_USE_MOCK_PRO === 'true', // 生产打包开关 supportTs: true, // 打开后,可以读取 ts 文件模块。 请注意,打开后将无法监视.js 文件。 })); return { plugins: plugins, resolve: { // https://cn.vitejs.dev/config/#resolve-alias alias: { // 设置路径 '~': path.resolve(__dirname, './'), // 设置别名 '@': path.resolve(__dirname, './src') }, // https://cn.vitejs.dev/config/#resolve-extensions extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue'] }, // vite 相关配置 server: { port: 82, host: true, open: true, proxy: { // https://cn.vitejs.dev/config/#server-proxy '/dev-api': { target: 'http://localhost:8081', changeOrigin: true, rewrite: (p) => p.replace(/^\/dev-api/, '') } }, }, } })
关键代码
import { viteMockServe } from 'vite-plugin-mock' const env = loadEnv(mode, process.cwd()); const plugins = createVitePlugins(env, command === 'build'); plugins.push(viteMockServe({ mockPath: "mock",// 解析根目录下的mock文件夹 localEnabled: env.VITE_USE_MOCK_ENV === 'true', // 开发打包开关 prodEnabled: env.VITE_USE_MOCK_PRO === 'true', // 生产打包开关 supportTs: true, // 打开后,可以读取 ts 文件模块。 请注意,打开后将无法监视.js 文件。 }));
3.添加mock文件
根目录创建mock文件夹以及index.ts文件
import { MockMethod } from 'vite-plugin-mock' const Mock = require('mockjs') export default [ { url: '/dev-api/captchaImage', method: 'get', response: ({ query }) => { return { code: 200, data: { nickname: '@cname', age: '@integer(10-100)', uid: '@id', url: '@image', city: '@city', country: '@county(true)', province: '@province', mobile_phone: '@phone', email: '@email', region: '@region', menus: [ { menu_name: '一级导航', id: '@id', code: 'Nav1', children: [ { code: 'about', menu_url: 'views/about', access_permissions: '["about"]', children: [], menu_name: '测试1', id: '@id' }, { code: 'home', menu_url: 'views/home', access_permissions: '["home"]', children: [], menu_name: '测试2', id: '@id' } ] }, ] }, } }, }, ] as MockMethod[]
4.配置.env.development文件
# 开发打包开关 VITE_USE_MOCK_ENV = 'false' # 生产打包开关 VITE_USE_MOCK_PRO = 'false'
备注:开发环境若是要启用mock数据,请把【VITE_USE_MOCK_ENV】节点的值改为【'true'】
本文来自博客园,作者:心若随风,转载请注明原文链接:https://www.cnblogs.com/LW1112/p/15918775.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)