vue3 学习笔记05 -- mock的使用

vue3 学习笔记05 -- mock的使用

mock主要用途仅为模拟后端数据接口

  • 安装依赖

    npm i mockjs vite-plugin-mock@2.9.8 -D

  • 根目录下创建mock文件夹

    • /mock/login/index.mock.ts -- 模拟登录接口

      ts 复制代码
        export default [
              // 用户登录接口
              {
                  url: '/mock/user/login',//请求地址
                  method: 'post',//请求方式
                  response: ({ body }:any) => {
                      return {
                          "code": 200,
                          "message": "成功",
                          "data": {
                              
                              "token": "1234567890xxx",
                              "expireAt": 1720505458920,
                              "refreshToken": "12345678765xxx",
                              "userInfo": {
                                  "id": 20,
                                  "name": '小明',
                                  "phone": 15984958697
                              }
                          }
                      }
                  },
              }
          ]
    • src/index.ts

      ts 复制代码
          import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'
          import login from './login/index.mock';
          const modules = {
              login
              // 其他模块...
          };
          const mockModules: any[] = []
          Object.keys(modules).forEach(async (key) => {
          if (key.includes('_')) {
              return
          }
          mockModules.push(...(modules[key] as any))
          })
      
          export function setupProdMockServer() {
          createProdMockServer(mockModules)
          }
  • vite.config.ts配置

ts 复制代码
import { defineConfig, loadEnv, UserConfig, ConfigEnv } from 'vite'
// mock插件提供的方法
import { viteMockServe } from 'vite-plugin-mock'
export default defineConfig({
  plugins: [
    vue(),
    viteMockServe({
        mockPath: './mock/',
        localEnabled: true,
        injectCode: `
          import { setupProdMockServer } from '../mock/index'

          setupProdMockServer()
          `
      }),
  ],

  server:{
    host: '0.0.0.0', // 允许IP访问
    proxy: {
         '/api': {
          target: 'http://127.0.0.1:8000',
          changeOrigin: true,
          rewrite: (path) => path.replace(/^\/api/, '')
        }
      }
  }
})
相关推荐
攻城狮7号7 小时前
不懂代码也能造?TRAE+GLM-4.6 手把手教你搭心理咨询智能客服小程序
python·小程序·uni-app·vue·trae·glm我的编程搭子·glm-4.6
●VON7 小时前
0基础也能行!「Flutter 跨平台开发训练营」1月19日正式启动!
学习·flutter·von·openjiuwen
敲敲了个代码7 小时前
如何优化批量图片上传?队列机制+分片处理+断点续传三连击!(附源码)
前端·javascript·学习·职场和发展·node.js
@AfeiyuO7 小时前
Vue 引入全局样式scss
前端·vue·scss
橙河网络8 小时前
橙河网络:海外问卷安全类问卷调查怎么做?
网络·经验分享·笔记·课程设计
知识分享小能手8 小时前
Oracle 19c入门学习教程,从入门到精通,Oracle 其他数据对象 —— 语法详解与综合实践(11)
数据库·学习·oracle
觉醒大王8 小时前
如何让综述自然引出你的理论框架?
论文阅读·深度学习·学习·自然语言处理·学习方法
知南x8 小时前
【华为昇腾DVPP/AIPP学习篇】(1)工程结构介绍
学习·华为·昇腾·cann·dvpp
科技林总9 小时前
【系统分析师】4.7 Web服务
学习
LaoZhangGong12310 小时前
学习TCP/IP的第6步:断开连接
网络·学习·tcp/ip·以太网