当后端接口还没有完成的时候,前端没必要等。可以自己使用 mock 来构建服务端接口的环境和数据。自己动手,丰衣足食。
安装
pnpm add mockjs vite-plugin-mock -D
配置
在 vite.config.ts 中配置
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
import { defineConfig } from 'vite'
import { viteMockServe } from 'vite-plugin-mock'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue(),
viteMockServe({
supportTs: true,
mockPath: "./src/mock/source", // 解析,路径可根据实际变动
localEnabled: true, // 开发环境设为true,
prodEnabled: false, // 生产环境设为true,也可以根据官方文档格式
injectCode:
` import { setupProdMockServer } from './src/mock';
setupProdMockServer(); `,
watchFiles: true, // 监听文件内容变更
injectFile: resolve("src/main.ts"), // 在m
})
]
})
新建数据
在 src/mock/source 下新建 user.ts 文件,内容如下:
export default [
{
url: "/api/users",
method: "GET",
response: () => {
return {
code: 0,
message: "success",
result: {
nickname: '神奇动物在哪里',
gender: 1
},
};
}
}
]
使用
import axios from 'axios'
axios.create({
baseURL: import.meta.env.VITE_BASE_URL
})
axios.get("/api/users").then(res => { console.log(res); });
运行起来,看到控制台的网络中请求的状况:
请求网址: http://localhost:3000/api/users
请求方法: GET
状态代码: 200 OK
远程地址: 127.0.0.1:3000
引荐来源网址政策: strict-origin-when-cross-origin
# response
{code: 0, message: "success", result: {nickname: "神奇动物在哪里", gender: 1}}
code: 0
message: "success"
result: {nickname: "神奇动物在哪里", gender: 1}
gender: 1
nickname: "神奇动物在哪里"