mockjs

MockJS入门(一) 最近因为公司产品需要,接触到了前后台交互,由于后台开发接口等需要时间,所以就研究了一下mockjs模拟假数据, 众所周知Mock.js因为两个重要的特性风靡前端: 数据类型丰富 支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。 拦截 Ajax 请求 不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据。安全又便捷 mockjs入门操作: 开发环境:WebStorm+Vue+MockJs 1.首先搭建一个新的vue项目,进行配置化,具体不知道怎么配 阅读详情

Mock.js 是一款模拟数据生成器,旨在帮助前端工程师独立于后端进行开发,帮助编写单元测试。

提供了以下模拟功能:

  • 根据数据模板生成模拟数据
  • 模拟 Ajax 请求,生成并返回模拟数据
  • 基于 HTML 模板生成模拟数据

下载地址https://github.com/nuysoft/Mock/edit/refactoring/dist/mock.js,官方网址http://mockjs.com/

本文从brower端和项目应用两个方面来介绍mock.js的使用。

浏览器端的使用

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<!--1.引文件-->
		<script src="../js/jquery-1.10.1.js" type="text/javascript" charset="utf-8"></script>
		<script src="../js/plugin/mock.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<button id="btn">获取数据</button>
		<ul></ul>
	</body>
	<script type="text/javascript">
		//4.mock的extend方法
		var Random=Mock.Random;
		Random.extend({
		    'xingzuo': function(date) {
		        var constellations = ['白羊座', '金牛座', '双子座', '巨蟹座', '狮子座', '处女座', '天秤座', '天蝎座', '射手座', '摩羯座', '水瓶座', '双鱼座']
		        return this.pick(constellations)
		    }
		})
		//3.调用Mock的方法
		Mock.mock("http://www.baidu.com/q",{
			"user|5-8":[
			//保证数据的真实性
				{
					"name":"@cname",
					"pid|+1":0,
					"text":"@cparagraph",
					"time":"@datetime()",
					"img":"@image",
					"email":"@email",
					"address":"@county(true)",
					"youbian":"@zip",
					"sfz":"@id",
					"xz":"@xingzuo"
				}
			]
		})
		//2.请求数据
		$("#btn").click(function(){
			$.ajax({
				type:"get",
				url:"http://www.baidu.com/q",
				dataType:"json",
				//字符串转json数据
				success:function(data){
//					console.log(data)
					data.user.map(function(item){
//						$("ul").append("<li><p>"+item.name+"</p><p>"+item.address+"</p><p>"+item.sfz+"</p><p>"+item.email+'</p><img src="'+item.img+'" /></li>')
						$("ul").append("<li><p>"+item.xz+"</p><p>"+item.address+"</p><p>"+item.sfz+"</p><p>"+item.email+'</p><img src="'+item.img+'" /></li>')
					})
				}
			})
		})
		
	</script>
</html>

注:post传数据的方式,根据请求不同,返回不同数据

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<!--1.引文件-->
		<script src="../js/jquery-1.10.1.js" type="text/javascript" charset="utf-8"></script>
		<script src="../js/plugin/mock.js" type="text/javascript" charset="utf-8"></script>
	</head>
	<body>
		<button id="btn">获取数据</button>
		<ul></ul>
	</body>
	<script type="text/javascript">
		//3.mock的extend
		var Random=Mock.Random;
		Random.extend({
		    'xingzuo': function(date) {
		        var constellations = ['白羊座', '金牛座', '双子座', '巨蟹座', '狮子座', '处女座', '天秤座', '天蝎座', '射手座', '摩羯座', '水瓶座', '双鱼座']
		        return this.pick(constellations)
		    }
		})
		//4.定义数据
		var data=Mock.mock({
			"user|5-8":[
				{
					"name":"@cname",
					"pid|+1":0,
					"text":"@cparagraph",
					"time":"@datetime()",
					"img":"@image",
					"email":"@email",
					"address":"@county(true)",
					"youbian":"@zip",
					"sfz":"@id",
					"xz":"@xingzuo"
				}
			]
		})
		var data1=Mock.mock({
			"user|3":[
				{
					"name":"@cname",
					"pid|+1":0,
					"xz":"@xingzuo"
				}
			]
		})
		
		//5.调用Mock的方法,默认是get
		Mock.mock("http://www.baidu.com/q","post",function(req){
            //将id=1转成1,不是标准的数据用eval()
			var cs=eval(req.body)
			if(cs==1){
				return data
			}else{
				return data1
			}
		})
		
		//2.请求数据
		$("#btn").click(function(){
			$.ajax({
				type:"post",
				url:"http://www.baidu.com/q",
				dataType:"json",
				data:{id:1},
				success:function(data){
					console.log(data)
				}
			})
		})
		
	</script>
</html>

项目工程化应用

1.安装依赖   yarn  add  mockjs         或者   npm  i  mockjs -D

2.启动项目   npm start

3. 新建data目录与components同级,定义个data.js用来模拟mock生成数据,随机生成数据,要暴露出去。如果数据比较多,可以在data目录下面定义多个js文件用来模拟数据,暴露出去即可。

//data/data.js
import Mock from "mockjs"

var data=Mock.mock({
	"user|5-8":[
		{
			"name":"@cname",
			"pid|+1":0,
			"text":"@cparagraph",
			"time":"@datetime()",
			"img":"@image",
			"email":"@email",
			"address":"@county(true)",
			"youbian":"@zip",
			"sfz":"@id"
		}
	]
})


export default data;

4.在other.js页面发起ajax请求,导入数据

import React from 'react';
//1.导入相关模块
import Mock from "mockjs"
import data from "../data/data"
import $ from "jquery"
//2.mock调用,准备好数据
Mock.mock("http://www.jd.com",function(){
	return data
})
//可写成
//Mock.mock("http://www.jd.com",data)

class Other extends React.Component{
	constructor(props){
		super(props)
	}
	//3.请求数据
	tap(){
		$.ajax({
			type:"get",
			url:"http://www.jd.com",
			dataType:"json",
			success:function(data){
				console.log(data.user)
			}
		});
	}
	render(){
		return(
			<div>
				<h1> Other </h1>
				<button onClick={this.tap.bind(this)}>获取数据</button>
			</div>
		)
	}
}

export default Other;

总结:

mock作用:模拟数据,模拟后台接口(拦截ajax请求)

用mock的原因:后台接口没有准备好,用json的话是本地的,没法模拟接口地址;用node的话,有点大才小用,而且它是localhost,也没法模拟接口地址。

mock的特点:

  • 前后端分离:让前端攻城师独立于后端进行开发。
  • 开发无侵入:不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据。
  • 数据类型丰富:支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。

  • 增加单元测试的真实性:通过随机数据,模拟各种场景。

  • 用法简单:符合直觉的接口。

  • 方便扩展:支持支持扩展更多数据类型,支持自定义函数和正则。

 

MockJS快速入门 什么是MockJS 在前后端分离的开发环境中,前端同学需要等待后端同学给出接口及接口文档之后,才能继续开发。而MockJS可以让前端同学独立于后端同学进行开发,前端同学可以根据业务先梳理出接口文档并使用MockJS模拟后端接口。那么MockJS是如何模拟后端接口的呢?MockJS通过拦截特定的AJAX请求,并生成给定的数据类型的随机数,以此来模拟后端同学提供的接口。 准备工作 写在最前面:有的小伙... 阅读详情

相关推荐

Telegram Bot Api使用教程

其中token为你的机器人token,method为telegram给定的方法,在获取群组chat_id那一步就使用了telegram的其中一个方法(getUpdates),其他方法后面会介绍。telegram发送消息的方式类似与钉钉机器人,都是向一个api发送http请求,而且对于同一个APItelegram支持GET和POST两种请求方式.请求的api格式如下。通常来说我们都需要让机器人在一个群组里工作,所以首先我们需要将机器人添加到我们指定的群组,在群组里发送随意消息并@这个机器人,比如...

豫迷糊的码上生活 1万+

Mock.js

Mock.js Mock.js 是一款模拟数据生成器,旨在帮助前端独立于后端进行开发,帮助编写单元测试。提供了以下模拟功能: 根据数据模板生成模拟数据 模拟 Ajax 请求,生成并返回模拟数据 基于 HTML 模板生成模拟数据 1. 安装使用 安装 # 1. npm 安装 $ yarn add mockjs # 2. 使用CDN <script src="https://cdn.bootcdn.net/ajax/libs/Mock.js/1.0.1-beta3/mock-min.js">

ximingx 1189

DDR内存设计必看:DFI接口协议详解与实战避坑指南(附时序图解析)

本文深入解析了DDR内存设计中连接内存控制器与物理层的DFI接口协议,聚焦于DDR4/DDR5设计的实际痛点。文章详细阐述了协议版本兼容性、时钟架构(匹配频率与频率比系统)、PCB信号完整性设计以及上电初始化与调试等关键环节,为硬件工程师提供了一套从理论到实战的完整避坑指南,并附有时序图解析以助理解。

weixin_29256771的博客 329

mock.js的下载安装及使用(Vue)

mock.js-无需等待,随机产生数据,让前端独立于后端进行开发 mock.js所做的 基于 数据模板 生成模拟数据。 基于 HTML模板 生成模拟数据。 拦截并模拟 ajax 请求。 1、Mock.js下载安装 下载mock.js文件 https://raw.githubusercontent.com/nuysoft/Mock/refactoring/dist/mock.js 直接打...

糖长老莫小贝的博客 4652

CVPR2021 CenterPoint源码解读:从VoxelNet到两阶段优化的完整实现细节

本文深度解析了CVPR 2021 CenterPoint模型的完整实现细节,从VoxelNet体素化、稀疏卷积Backbone,到基于中心点的检测头与两阶段精修机制。文章提供了从环境搭建、数据预处理到核心代码模块(如热力图生成、关键点特征提取与MLP Refiner)的实战指南,并分享了训练策略、多任务损失调优及可视化调试等关键工程实践,助力开发者深入理解并复现这一高效的3D目标检测框架。

linux的博客 470

若依开源框架(分离版)在人大金仓数据库下使用

对于甲方业务特殊要求,使用国产化数据库人大金仓,作为项目主要存储。这里以若依开源框架整合人大金仓为例,演示如何在真实项目中引入人大金仓。

🐱喵测实验室 5942

Mock.js 安装 及 使用demo

Mock.js 安装 及 使用demoMock.js官方网址: 首页:http://mockjs.com/1、Mock.js下载安装 下载mock.js文件 npm安装mock模块 项目路径下执行命令: npm install mock 2、Mock.js 使用demo 文件结构,如图: 以下是文件代码: index.html<!DOCTYPE html> <html lang="en">

SunPrincess的专栏 2万+

基于PCA的故障诊断方法(matlab)

1. PCA原理分析 PCA的原理主要是将原始数据进行降维。其具体工作原理参照:CodingLabs - PCA的数学原理 2. 数据预处理 训练数据集(只有正样本)为维数据,即有n个采样值,每个采样值有m个特征。 2.1 数据归一化 将数据X针对每个特征归一化为均值为0,均方根为1的数据。 其中: 3. PCA降维 3.1 首先求取协方差矩阵 协方差矩阵的公式为: 计算出来的协方差矩阵为特征m*m维矩阵。 3.2 求取特征值和特征向量 求取协方差矩阵R的特征值.

tangxianyu的博客 1万+

mock.js文档详解7及下载(数据占位符,setup方法)

Mock.Random 是一个工具类,用于生成各种随机数据 //数据占位符 @+Random的函数名 console.log( Mock.mock("@cname"), //生成随机的中文姓名 Mock.mock("@natural(1, 5)"), //生成1-5的自然数 Mock.mock("@ctitle(5)@guid"), //可以连续使用 Mock.mock("@ctitle(5)@guid 123"), //以空格分隔可以接字符串 ); //setup函数.

yuey0809的博客 835

本地快速部署谷歌开放模型Gemma教程(基于Ollama)

谷歌最近发布了新一代开源AI模型Gemma,此次发布的 Gemma 相比自家的 Gemini 更加轻量级,模型权重也一并开源。不仅可以在笔记本电脑上运行,而且还免费可商用,支持中文。运行速度飞快。

特立独行的博客 6716

【原创】关于西门子S120 的电气图纸设计

我们首先要了解一下模块的基本信息:SINAMICS 功率模块 PM240-2 三相交流380-480V+10/-10% 47-63Hz;至此,我们选择的驱动系统配置的资料都已经查找完毕,接下来就是根据每个部件的功能接口和我们需要实现的功能画出接线连接图,这样关于伺服电机控制,硬件部分设计就完成了。2)FSA - FSC 型功率模块 PM240-2 的屏蔽连接板外形尺寸图,所有数据以毫米(英寸)为单位。1)FSA 型功率模块 PM240-2 的外形尺寸图,所有数据以毫米(英寸)为单位。

Qinmingyue13的博客 2638

mock模拟数据

在前端开发过程中,有后台配合是很必要的。但是如果自己测试开发,或者后台很忙,没时间,那么我们需要自己提供或修改接口。 1.下载mockjs: npm install --save mockjs 2.在src下创建相关文件与文件夹(在src下面创建mock文件夹,并在mock文件夹下创建json文件夹和index.js文件,json文件夹中写相关json文件) 3.设置请求文件inde...

qq_41716608的博客 662

5、硬件工程师笔试面试——上拉电阻、下拉电阻(2025版本)

本文系统介绍了上拉电阻和下拉电阻的原理与应用。上拉电阻通过连接电源确保电路高电平状态,常用于数字电路防抖、OC门驱动等场景;下拉电阻连接地线维持低电平,适用于低电平触发电路。文章详细分析了两种电阻的选择方法、功耗与响应速度的平衡策略,以及在高速信号传输中的影响差异。同时对比了二者的优缺点,并提供了模拟电路中的应用实例。最后给出了电阻值计算的工程方法,为硬件工程师的电路设计提供了实用参考。

XU157303764的博客 2868

mockjs——mockjs定义、mockjs安装、mockjs使用、mockjs方法、mockjs语法、代码示例

拦截ajax请求,生成伪数据应用场景:在工作中,后端已经出接口文档,还没有实现代码由前端依照接口文档模拟伪数据,实现前端开发功能。

TKY666的博客 2万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

mockjs使用

1.安装 npm install mockjs --save npm install axios --save 安装axios是为了能模拟后台接口。 2.建立目录结构如下: 3.在main.js引入mockjs 4. mock.js import Mock from 'mockjs' // 引入mockjs const Random = Mock.Random // Mo...

xiaoxiaojie12321的博客 5万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

mockjs介绍

官网https://github.com/nuysoft/Mock/wiki/Getting-Started 一、为什么使用mockjs 在做开发时,当后端的接口还未完成,前端为了不影响工作效率,手动模拟后端接口。 1.我们可以使用json文件来模拟后台数据,但比较局限,无法模拟数据的增删改查 2.使用json-server模拟,但不能随机生成所需数据 3.使用mockjs模拟后端接口,可随机生成所需数据,可模拟对数据的增删改查 二、mock优点 1.前后端分离 2.可随机生成大量的数据 3

顺其自然~专栏 1604

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

mockjs学习

1.首先在项目中安装mockjs 一般的还会在项目中安装json5.解决son文件不能加注释的问题 npm install mockjs --save-dev npm install json5 --save-dev 2.在项目中使用mockjs //引入mockjs模块 const Mock=require('mockjs') let obj=Mock.mock({ id:'@id', username:'@cname()',//随机生成一个中文名字 date:'@date()'

simple5960的博客 189

【Mockjs】Vue中使用Mockjs,语法规范,常用方法

目录1.在Vue中使用Mockjs1.安装2.创建3.引入4.添加代码2.语法规范 - 数据模板定义1.数据模板介绍2.规则(1)'name|min-max': value(2)'name|count': value(3)'name|min-max.dmin-dmax': value(4)'name|min-max.dcount': value(5)'name|count.dmin-dmax': value(6)'name|count.dcount': value(7)'name|+step': value

wusq的博客 1590

学习mockjs

什么是mockjs 前后端分离(让前端攻城师独立于后端进行开发) 增加单元测试的真实性(通过随机数据,模拟各种场景) 开发无侵入(不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据) 用法简单(符合直觉的接口) 数据类型丰富(支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等) 方便扩展(支持支持扩展更多数据类型,支持自定义函数和正则) 安装 npm install mockjs 使用 Mock var Mock = require('mockjs

weixin_45820444的博客 1959

MockJs的基础使用

文章目录前言一、MOCKJS是什么?二、Mock优点三、语法规则四、使用Mock1.安装Mock2.在环境中使用 前言 作为前端开发,很多时候我们还来不及等待后端程序员开发接口,想做数据渲染,已被测试怎么办呢, 一、MOCKJS是什么? 采用json数据模拟,生成数据比较繁琐,也比较有局限性,没办法达到增删改查 采用mockJs进行模拟数据,可以模拟各种场景(get、post)生成接口,并且随机生成所需数据,还可以对数据进行增删改查 二、Mock优点 1.前后端分离 2.可随机生成大量的.

weixin_43920346的博客 689

vue中使用mockjs

1.安装mockjs 和axios npm install --save-dev mockjs npm install --save axios 2.在src目录下创建mock文件夹,并创建index.js文件,内容如下: import Mock from 'mockjs' const data={ "id":"@guid", "name":"@cname", }; ...

lduzhenlin的专栏 1万+

理解mockjs并且怎么去使用mockjs

今天发现个好的东西 参考链接:https://github.com/nuysoft/Mock/wiki (mockjs的详细讲解) 一. 什么是mockjs? 生成随机数据,拦截 Ajax 请求 二. 为什么要使用mockjs? 在做开发时,当后端的接口还未完成,前端为了不影响工作效率,手动模拟后端接口, 1.我们可以使用json文件来模拟后台数据,但比较局限,无法模拟数据的增删改查 2.使用json-server模拟,但不能随机生成所需数据 3.使用mockjs模拟后端接口,可随机生成所需数据,.

weixin_46419373的博客 995

mockjs总结

mockjs 1.作用 在做开发时,当后端的接口还未完成,前端为了不影响工作效率,手动模拟后端接口, 2.使用方法 npm install mockjs --save-dev // 引入 Mock var Mock = require('mockjs') // 定义数据类型 var data = Mock.mock({ // 20条数据 "data|20": [{ // 商品种类 "goodsClass": "女装", // 商品Id "goodsId|+1": 1

web2001chu的博客 3332

Mockjs 的运用

本文介绍了Mock.js的安装、语法规范及核心API。Mock.js用于生成随机数据并拦截Ajax请求,适用于开发环境模拟后端接口。其数据模板支持字符串、数字、布尔、对象、数组、函数和正则等多种类型,通过|定义生成规则,结合@占位符实现灵活数据生成。主要API包括Mock.mock()(生成数据)、Mock.setup()(配置响应时间)、Mock.valid()(校验数据匹配)和Mock.toJSONSchema()(转换为JSON Schema),助力前端高效开发与测试。

青蛙king的博客 2330

如何在react中使用mockjs来模拟数据

一、引入mockjs: sudo cnpm install mockjs // mock.js // 使用 Mock var Mock = require('mockjs') var data = Mock.mock("/mock",{ //"/mock"是通过ajax获取数据时填写的地址,可以随意写。但要和ajax请求时填写的地址一致。 "userinfo|4":[{ ...

xiamocsdn的博客 1万+
上一篇: eval()的相关用法
下一篇: iscroll
keep789
博客等级 码龄9年 73粉丝 64原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值