yarn add vite-plugin-mock mockjs -D
//vite.config.ts
import { defineConfig, loadEnv, UserConfig, ConfigEnv } from 'vite'
import { viteMockServe } from 'vite-plugin-mock'
export default ({ command, mode }: ConfigEnv): UserConfig => {
//command 可以根据'build' | 'serve'不同环境来配置
const isBuild = command === 'build'
//mode拿环境变量 development开发 |production 生产
const root = process.cwd()
const env = loadEnv(mode, root)
return {
plugins:[ viteMockServe({
mockPath: 'mock',
localEnabled: !isBuild
})]
}
}
//ts.config.json
"include": ["mock/**/*.ts"]
根目录创建mock文件夹
import { Random } from 'mockjs'
import { MockMethod } from 'vite-plugin-mock'
export default [
{
url: '/api/info',
method: 'get',
response: () => {
return {
code: 200,
message: '请示成功',
type: 'success',
data: {
name: 'yyyy',
age: 18,
avatar: '/avatar/xj.jpg'
}
}
}
}
] as MockMethod[]
使用方式
let data = await fetch('api/info', {
method: 'get'
}).then(res => res.json())
console.log(data)