MokeJs使用实例

server/2024/10/18 18:30:06/

文章目录

    • MokeJs使用实例
      • 介绍
      • 使用
        • 安装
        • 配置文件
        • 导入配置到main.js
        • 使用 axios 发送网络请求测试(如果不会axios,具体可以见上篇文章axios)
          • 启动示例

MokeJs使用实例

介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用

安装
npm install mockjs --save-dev  
# 或者  
yarn add mockjs --dev
配置文件

在你的项目中创建一个专门用于配置 Mock 的文件,例如 mock/index.js。在这个文件中,你可以定义你的 Mock 数据和请求规则
在这里插入图片描述

// mock/index.js  
import Mock from 'mockjs';  // 定义一个简单的 GET 请求的 Mock,返回一个用户对象  
Mock.mock('/user', 'get', {    status: 200, // 通常使用 status 而不是 code,但取决于你的后端 API 约定  message: 'success',    data: {    'username': '@cname', // 使用 Mock.js 的随机数据生成器来生成一个中文名字  'age|18-60': 1 // 生成一个 18 到 60 之间的随机年龄  // 你可以在这里添加更多的用户属性  }    
});
导入配置到main.js

在你的 Vue 3 项目的入口文件(通常是 main.js 或 main.ts)中引入你创建的 Mock 配置文件。
在这里插入图片描述
在这里插入图片描述

import './assets/main.css'import { createApp } from 'vue'
import App from './App.vue'
import router from './router'import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import axios from 'axios'
import store from './store'
import './mock'; // axios.defaults.baseURL="http://localhost:8088"
const app = createApp(App)app.config.globalProperties.$http = axiosapp.use(store)
app.use(router)
app.use(ElementPlus)
app.mount('#app')
使用 axios 发送网络请求测试(如果不会axios,具体可以见上篇文章axios)

axios教程

在这里插入图片描述

<template><div><h1>{{ title }}</h1></div>
</template><script>
import axios from 'axios';
import { onMounted } from 'vue';
export default {name:"Movie",props:["title"],data:function name(params) {return {}},created:function(){console.log("movie is creating")axios.get("/user").then(function(res){console.log(res)})}
}</script>

在这里插入图片描述
这里发送一个向本地 user 的地址,也就是我们的前端服务器
在这里插入图片描述
下面的mock也只要接受这样一个user接口的请求就好,其实默认就是我们的前端服务器,在我这里就是
在这里插入图片描述
启动项目后

启动示例

在这里插入图片描述
可以看见数据被接受到了

最后值得注意一点,在浏览器的网络请求中,并不会出现。

当使用 Mock.js 拦截请求时,这些请求实际上是在前端被拦截并模拟响应的,而并没有真正发送到服务器。因此,这些被拦截的请求不会在浏览器的开发者工具中的“网络”(Network)标签页上显示出来,因为浏览器并没有真正发出这些请求。

具体来说,当你使用 Mock.js 定义一个 Mock 请求时,你指定了一个 URL 模式、请求方法(如 GET、POST)以及一个返回的数据模板。当前端代码尝试发起一个与这个 URL 模式和请求方法相匹配的请求时,Mock.js 会捕获这个请求,并根据你定义的数据模板生成一个模拟的响应,然后直接返回给前端代码,而不会将这个请求发送到服务器。
因此,在浏览器的开发者工具中,你不会看到这些被 Mock.js 拦截的请求的记录。相反,你会看到前端代码接收到了 Mock.js 返回的模拟响应,并据此进行后续的处理。
需要注意的是,虽然 Mock.js 非常适合在开发阶段使用来模拟后端接口和数据,但在生产环境中应该禁用 Mock.js,以确保前端代码能够与真实的后端服务进行交互。

在这里插入图片描述

所以我们可以看见控制台能够有数据打印,但是浏览器的请求栏是空的
在这里插入图片描述


http://www.ppmy.cn/server/131378.html

相关文章

Base16编码解码在线工具

具体请前往&#xff1a;在线Base16编码/解码工具-支持utf-8,Latin1,ascii,GBK,Hex等编码

LRU缓存

这是一个很经典的面试题 146. LRU 缓存 - 力扣&#xff08;LeetCode&#xff09; 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类&#xff1a; LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key)…

微信小程序不支持font-weight:500

小程序的font-weight只支持&#xff1a;normal、bold、bolder和lighter。 normal 正常粗细。与 400 等值。 bold 加粗。与 700 等值。 lighter 比从父元素继承来的值更细 (处在字体可行的粗细值范围内)。 bolder 比从父元素继承来的值更粗 (处在字体可行的粗细值范围内…

接口测试-day3-jmeter-3http请求默认值

postman只需要写上请求方式和url即可&#xff0c;但是在jmeter中则是分开写的。 对于同一个项目的接口而言&#xff1a;他们的协议、域名、端口号、内容编码都是一样的。这样就相当于做了重复的工作。 不一样的地方只是在路径。不同的页面的路径是不同的。 如果我们设置了相…

Docker镜像命令汇总笔记

1.Docker镜像 Docker 镜像是用于部署容器化应用的轻量级、可执行的软件包。它们包含了运行特定应用所需的所有内容&#xff0c;包括代码、运行时环境、系统工具、系统库和设置。Docker 镜像通过文件来实现不同层的分发&#xff0c;每一层对应Dockerfile中的一个指令&#xff0…

R语言:ERGM指数随机图模型4:缺失值处理

文章目录 缺失数据可用的ERGM变量缺失数据 区分没有联系和不知道是否存在联系(即数据缺失Missing data)这两种情况是很重要的。前者是观察到的零,而后者是未被观察到的。我们不应该将这两种情况都编码为“0”。只要我们将数据识别为缺失数据,“ergm”包就能适当地识别并处…

解决新版Android studio不能连接手机的问题

我要说的是一个特例&#xff0c;装了22年的版本AS可以正常连接手机&#xff0c;装了23年以后新版本&#xff0c;AS不能正常连接手机了&#xff0c;但是在CMD控制台可以正常的执行adb命令&#xff0c;并且CMD和AS都是指向D:\android_sdk\platform-tools\adb.exe 一、 为什么会出…

CSS的介绍

CSS,层叠样式表,用于控制页面的样式.CSS能够对网页中元素的位置进行像素级精确控制,实现美化页面的效果,能够做到页面的样式和结构分离. CSS的基本语法规则:选择器{N条声明} 选择器决定修改谁,声明表示修改的内容.声明的属性是键值对.CSS有三种引入方式,行内样式,内部样式,外部…