当前位置: 首页 > article >正文

vue3学习——mock数据

安装

pnpm install -D vite-plugin-mock mockjs

vite.config.js 配置

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { viteMockServe } from 'vite-plugin-mock'

export default defineConfig(({ command }) => {
  return {
    plugins: [
      vue(),
      viteMockServe({
        enable: command === 'serve',
      }),
    ],
  }
})

根目录下创建mock/user.ts

//用户信息数据
function createUserList() {
  return [
    {
      id: 1,
      username: 'admin',
      token: 'Admin Token',
    },
    {
      userId: 2,
      username: 'system',
      token: 'System Token',
    },
  ]
}

export default [
  // 登录接口
  {
    url: '/api/user/login', //请求地址
    method: 'post', //请求方式
    response: ({ body }) => {
      //获取请求体携带过来的用户名与密码
      const { username, password } = body
      //调用获取用户信息函数,用于判断是否有此用户
      const checkUser = createUserList().find(
        (item) => item.username === username && item.password === password,
      )
      //没有用户返回失败信息
      if (!checkUser) {
        return { code: 201, data: { message: '账号或者密码不正确' } }
      }
      //如果有返回成功信息
      const { token } = checkUser
      return { code: 200, data: { token } }
    },
  },
  // 获取用户信息
  {
    url: '/api/user/info',
    method: 'get',
    response: (request) => {
      //获取请求头携带token
      const token = request.headers.token
      //查看用户信息是否包含有次token用户
      const checkUser = createUserList().find((item) => item.token === token)
      //没有返回失败的信息
      if (!checkUser) {
        return { code: 201, data: { message: '获取用户信息失败' } }
      }
      //如果有返回成功信息
      return { code: 200, data: { checkUser } }
    },
  },
]

测试

// 记得安装 axios
// main.ts
import axios from 'axios'
axios({
  url: '/api/user/login',
  method: 'post',
  data: {
    username: 'admin',
    password: '1112111',
  },
})


http://www.kler.cn/a/227926.html

相关文章:

  • SpringBoot整合Swagger UI 用于提供接口可视化界面
  • Linux《基础指令》
  • MySQL 索引存储结构
  • VLLM性能调优
  • 抠图神器,全离线使用,支持win和mac
  • 【面试】【前端】SSR与SPA的优缺点
  • SpringCloud-Eureka
  • 07、全文检索 -- Solr -- Solr 全文检索 之 为索引库添加中文分词器
  • Redis——SpringBoot整合Redis实战
  • 嵌入式中经典面试题分析
  • 图解Vue组件通讯【一图胜千言】
  • 牛客寒假训练营H题
  • 华为机考入门python3--(7)牛客7-取近似值
  • QT 范例阅读:系统托盘 The System Tray Icon example
  • 游戏如何选择服务器
  • 利用自定义注解和反射优雅处理对象字段
  • VUE3语法--computed计算属性中get和set使用案例
  • 常见的web前端开发框架介绍
  • 消息中间件(MQ)对比:RabbitMQ、Kafka、ActiveMQ 和 RocketMQ
  • 谷粒商城-P19
  • VitePress-08-文档中代码组的使用
  • sklearn 计算 tfidf 得到每个词分数
  • MySQL创建索引的注意事项
  • 华为数通方向HCIP-DataCom H12-831题库(简答题01-27)
  • pdmodel从动态模型转成静态onnx
  • WiFi测试的核心思路和主要工具