Vue3中简单使用Mock.js

这篇具有很好参考价值的文章主要介绍了Vue3中简单使用Mock.js。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

mock.js简介

Vue3中简单使用Mock.js

  官方链接:Mock.js (mockjs.com)

        前端开发人员用来模拟虚拟数据,拦截ajax请求,方便模拟后端接口


安装

npm install mockjs

使用

        本文主要介绍在Vue项目中使用mock.js,包括axios发送请求与请求简单封装

  1. 创建mock文件夹,新建index.js文件

    // 引入mockjs
    import Mock from "mockjs";
    
    // 获取 mock.Random 对象
    const Random = Mock.Random;
    
    // 使用mockjs模拟数据
    let tableList = [
      {
        id: "5ffa80aD-9CF4-0C77-eBFC-f6612BfAcF4F",
        account: "admin",
        password: "123456",
        address: "36918166@qq.com",
      },
      {
        id: "4FcC922C-C72c-95c3-Ef92-FbFAc24cc831",
        account: "ebHoL6",
        password: "i320Hu74fbn2Gi",
        address: "48165263@qq.com",
      },
    ]
    
    // for (let i = 0; i < 20; i++) {
    //   let newObject = {
    //     id: Random.guid(), // 获取全局唯一标识符
    //     account: /^[a-zA-Z0-9]{4,6}$/,
    //     password: /^[a-zA-Z]\w{5,17}$/,
    //     address: /[1-9]\d{7,10}@qq\.com/,
    //   };
    //   tableList.push(newObject);
    // }
    
    /** get请求
     * 获取用户列表
     */
    Mock.mock("/api/mockGetList", "get", () => {
      return {
        code: "0",
        data: tableList,
      };
    
    });
    
    
    /** post请求添加表格数据 */
    Mock.mock("/api/add", "post", (params) => {
      let newData = JSON.parse(params.body);
      newData.id = Random.guid();
      tableList.push(newData);
      return {
        code: "0",
        message: "success",
        data: tableList,
      };
    });
    

            模拟数据可自己手动编写,也可由for循环自动生成,可以设置数量,字段(可以通过正则表达式限制输出格式)。最后可设定请求路径,请求方式以及返回内容,可根据自身需求进行更改。

  2. 创建api文件夹,新建http.js文件(请求封装)

    import axios from "axios";
    import { ElLoading, ElMessage } from "element-plus";
    
    let http = axios.create({
      baseURL: "",
      timeout: 10000,
    });
    
    let loadingInstance;
    
    // 拦截器的添加
    http.interceptors.request.use(
      (config) => {
        loadingInstance = ElLoading.service("加载中");
        return config;
      },
      (err) => {
        loadingInstance?.close();
        ElMessage.error("网络异常");
        return Promise.reject(err);
      }
    );
    
    //响应拦截器
    http.interceptors.response.use(
      (res) => {
        loadingInstance?.close();
        return res.data;
      },
      (err) => {
        loadingInstance?.close();
        ElMessage.error("请求失败");
        return Promise.reject(err);
      }
    );
    export default http;
    

    这部分主要是对请求进行封装

  3. 新建mockApi.js文件(接口封装)

    import http from "./http.js";
    export default {
    
      //用户列表
      findAll() {
        return http({
          url: `/api/mockGetList`,
          method: "get",
        });
      },
    
      //添加用户
      addUser(user) {
        return http({
          url: `/api/add`,
          method: "post",
          data: user,
        });
      },
    
    }
    

    注意:url与提交方法要与mock中模拟请求保持一致

  4. 调用封装好的接口

         导入模拟数据与接口文件,根据自己的路径进行修改

import "../mock/index.js";
import mockApi from "../api/mockApi/mockApi.js";

        调用接口

//页面数据请求
let tableData = reactive([]);
const getList = () => {
 mockApi
   .findAll()
   .then((res) => {
        console.log(res)
     if (res.code === "0"){ 
      tableData.push.apply(tableData, res.data);
      }
    })
    .catch(function (error) {
      console.log(error);
    });
};
getList(); //直接调用请求方法

//添加用户
mockApi
  .addUser(editUser)
  .then((res) => {
        console.log(res)
    if (res.code === "0") {
       ElMessage({
          message: "保存成功",
          type: "success",
         });
      }
    })
    .catch(function (error) {
       console.log(error);
});

项目结构

Vue3中简单使用Mock.js

 结构大体如上,mock中的Management.js就是文中说到的使用第一步,根据自身需要进行修改

 文章来源地址https://www.toymoban.com/news/detail-433474.html

到了这里,关于Vue3中简单使用Mock.js的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vue3:在 VSCode 中如何成功安装 Mockjs 及成功引入 Mock 的详细过程

    1、什么是 Mock ? 其一、 Mock 的解释一: Mock 服务是指在测试过程中对于某些复杂(或者不太好构造)的对象,用一个虚拟的对象替代它;对于前端来说,就是后台数据还没有造出来,前端就可以通过 Mock 的路径或定义等,直接拿到想要的数据格式; 其二、 Mock 的解释二:

    2024年02月12日
    浏览(30)
  • 【Java】使用PowerMockito mock static方法/new对象/mock对象的public或private方法的简单示例

    1.1 打桩类的public static方法 测试用例中如果需要对public静态方法的打桩,针对测试类增加注解@RunWith(PowerMockRunner.class)同时针对静态方法所在的类增加注解@PrepareForTest({StaticMethod.class}),接着在测试用例调用方法之前增加 PowerMockito.mockStatic(StaticMethod.class); PowerMockito.when(StaticMet

    2024年01月24日
    浏览(32)
  • 使用Mock.js和json server快速生成前端测试数据

    下面演示的是我总结的一个使用示例,帮助大家参考学习,看完后,如果大家有其他需求,可以参考Mock.js 的官方文档,需要生成哪些格式的数据,复制样例代码即可,本案例重在演示如何使用Mock.js和json server自动生成前端开发测试用的接口数据。 先创建一个项目文件夹,取

    2023年04月08日
    浏览(23)
  • React Dva项目中.roadhogrc.mock.js直接自动导入mock目录下所有文件方式

    上文 React Dva项目中模仿网络请求数据方法 中,我们书写了Dva项目模拟后端数据的方式 但是 我们.roadhogrc.mock.js中的这个处理其实并不好用 我们还需要一个一个的引入 我们可以直接靠一段代码 这就是一个读流的方式 获取mock目录下的所以文件 然后找出后缀为 .js的文件 全部弄

    2024年02月15日
    浏览(24)
  • 前端049_单点登录SSO_封装 Axios 与 Mock.js

    安装 Axios ,来向后台发送接口请求 安装 Axios 发送接口请求 创建 src/utils/request.js

    2024年02月08日
    浏览(82)
  • 前端mock数据 —— 使用Apifox mock页面所需数据

    在首页进行新建项目: 新建项目名称: 新建接口: 创建json: 请求方法: GET 。 URL: api/basis 。 响应类型: json , 响应内容: 导入后端json响应: 点击快捷请求自动创建mock: 设置mock规则: 请求成功: 可点击发送 - 返回成功的响应 使用postman请求mock接口: 说明: postman请

    2024年04月16日
    浏览(30)
  • Python测试框架 Pytest —— mock使用(pytest-mock)

    安装:pip install pytest-mock 这里的mock和unittest的mock基本上都是一样的,唯一的区别在于pytest.mock需要导入mock对象的详细路径。 先将需要模拟的天气接口,以及需要模拟的场景的代码写好,然后在进行遵循pytest的用例规范进行书写关于mock的测试用例 通过上述代码,提供pytest中

    2024年02月09日
    浏览(33)
  • vite使用mock插件的配置(vite-plugin-mock)

        mock经常在项目中使用,配置也是常有的事,故在此记录下来 一、安装依赖 二、配置 1、在项目的根目录  vite.config,ts 2、在./build/vite/plugin文件里面(此处文件是自行创建的) 3、在根目录创建一个mock文件,下面再细分各种文件,例如创建一个api / login.ts 4、在外部调用的

    2024年02月16日
    浏览(33)
  • 微信小程序开发通过mock后台数据,如何使用mock模拟后台数据,以及在小程序中使用

    作为一名前端开发人员,应该有很多像我一样不会写后台接口,但是网上非常多的项目都是需要后台数据支持的,这个时候前端开发人员可能会犯愁,现在我给大家推荐一个网站,可以帮助我们简单模拟后代数据 1.首先,在该网址https://www.fastmock.site注册登录,然后点击添加项

    2024年02月11日
    浏览(44)
  • 测试人必会的Python内置库:unittest.mock(单元测试mock的基础使用)

    unittest.mock是用于在单元测试中模拟和替换指定的对象及行为,以便测试用例更加准确地进行测试运行。例如对于以下代码,想要针对函数func_a写一个简单的单元测试: 但是这样的话,函数func_b和func_c的逻辑都需要一起测试,在单元测试中这明显是不合理的,对于想要测试的

    2024年02月01日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包