建立项目接口文档_分享:一步一个脚印,vue入门之使用mockjs搭建vue项目测试服务器...

在以前的文档中,我们构建了vue项目的整体架构,详见vue入门:vue项目架构设计起步,现在我们主要对其中的mock server 进行完善。

一、概述

前后端分离的项目优点之一就是可以前后端并行开发,互不影响。那么在后端接口没有完成之前,我们怎么进行前端项目的测试呢,这就需要我们自己构建一个前端测试服务,自己模拟假数据,以便于我们的前端开发工作。

这里我主要是应用mockjs做的mock server,并在vue2.0项目中进行使用。

mockjs可用来生成随机数据,并拦截 Ajax 请求,返回模拟的响应数据。

mockjs数据类型丰富,支持多种数据类型,如文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。

mockjs增加了前端单元测试的真实性,用法简单。

mockjs的功能强大,语法也很多,具体可以查看mockjs官方文档

二、使用

1、在vue项目中安装依赖

npm install mockjs --save-dev

2、建立项目文件结构

根目录下建立mock文件夹,然后分别构建util.js 、index.js 、json文件(以index.json为例)

245f8801fabc86623e12626dcad98a8c.png

3、util.js文件,主要是用来进行json数据读取方法的封装。内容如下:

// 引入外部资源

const fs = require('fs')

const path = require('path')

module.exports = {

// 用于被index.js进行调用

getJsonFile (filePath) {

// 读取指定的json文件

const json = fs.readFileSync(path.resolve(__dirname, filePath), 'utf-8')

// 解析并返回

console.log(json)

return JSON.parse(json)

}

}

e6ba1200a3bc5963eab2bab9908f872a.png

4、index.js文件,主要是用来定义各个接口方法。内容如下:

const Mock = require('mockjs')

const util = require('./util')

module.exports = function(app) {

// 监听请求

app.get('/api/index', (rep, res) => {

// 响应时,返回 mock data的json数据

const articleList = util.getJsonFile('./index.json')

// 将json传入 Mock.mock 方法中,生成的数据返回给浏览器

res.json(Mock.mock(articleList))

})

}

ebc75d671664731ea11dcaae9e0ae86c.png

5、index.json文件,主要是用来构建自己的模拟数据。如:

{

"ret":true,

"data|1-10":[{

"userid": "@id()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/529564.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单机最大负载_电流互感器允许接入的实际最大二次负载(注电案例1865)

某国外水电站安装的水轮发电机组,单机额定容量为 120MW,发电机额定电压为 13.8kV,cosφ0.85。发电机、主变压器采用发变组单元接线,未装设发电机断路器,主变高压侧三相短路时流过发电机的最大短路电流为 19.6kA。发电机…

html video显示进度条_使用 tqdm 在 Python 应用中显示进度 | Linux 中国

如果你的程序需要一段时间才能显示结果,可通过显示它的进度来避免让用户感到沮丧。来源:https://linux.cn/article-12990-1.html作者:Moshe Zadka译者:geekpi(本文字数:3093,阅读时长大约&#…

课题开题报告范文样本_成都汽车职业技术学校举行 2020年省、市、区课题开题报告会...

01为深入贯彻落实国务院、省、市、区关于深化教育教学改革的重要精神,充分发挥教育科研的先导作用,明晰课题研究的思路并提高课题研究的针对性,1月12日,成都汽车职业技术学校举行2020年省、市、区课题开题报告会。本次开题报告会邀…

安装mysql5 1步骤_Linux系统安装MySQL详细步骤(mysql-5.1等)

第一步、查找以前是否安装有mysql使用下面命令:rpm -qa|grep -i mysql如果显示有包则说明已安装mysql第二步、如果已安装,则需要删除已安装的数据库可按以下步骤删除数据库:删除包命令:rpm -e --nodeps 【包名】rpm -e --nodeps …

mysql分页查询关键_MySQL优化教程之超大分页查询

背景基本上只要是做后台开发,都会接触到分页这个需求或者功能吧。基本上大家都是会用MySQL的LIMIT来处理,而且我现在负责的项目也是这样写的。但是一旦数据量起来了,其实LIMIT的效率会极其的低,这一篇文章就来讲一下LIMIT子句优化…

mysql 分页 jdbc_JDBC调用MySQL分页存储过程实现(一)

DROP PROCEDURE IF EXISTS pro_pager;CREATE DEFINER root% PROCEDURE pro_pager(in p_pageNo int, /*当前页*/in p_perPageCnt int, /*每页记录数*/in p_sql VARCHAR(2000), /*查询sql语句*/out v_totalRowsCnt int, /*记录总条数*/out v_totalPageCnt int) /*记录总页数*/BE…

zabbix proxy mysql_zabbix proxy 配置

在监控大量服务器时,如果将所有的请求都发送到一个zabbix server上,将会对我们的zabbix server造成很大的压力,我们在规划多个区域或机房进行监控的时候,会考虑到使用zabbix proxy 来代理zabbix server 的部分功能。zabbix server…

mvc mysql linq_MVC3+Linq to sql 显示数据库中数据表的数据

1:首先创建asp.net mvc3应用程序 2:创建项目完成后 找到controllers文件鼠标右击选择添加控制器 3 为models文件夹添加一个linq to sql类文件,然后把数据库中的数据库复制进来。如截图操作 4:添加控制器好后会生成一个HomeControl…

mysql工作表格制作教程_Access制作复杂报表

何制作复杂报表利用excel输出复杂报表 在读这篇文章以前首先要提醒大家,Access 本身的报表也具有很强的实用性和强大的功能,只有当你发掘了其本身全部的功能却仍不能满足你对报表的特殊要求时才请使用 Excel 输出报表。很明显,使用 Excel 输出…

php+mysql投票代码_PHP+jQuery+MySql实现红蓝投票功能

本文是一篇综合知识应用类文章,需要您具备PHP、jQuery、MySQL以及html和css方面的基本知识。本文在《PHPMySqljQuery实现的“顶”和“踩”投票功能》一文基础上做了适当改进,共用了数据表,您可以先点击了解这篇文章。HTML我们需要在页面中展示…

numpy 最大值_第 85 天:NumPy 统计函数

数学统计在我们的程序当中特别是数据分析当中是必不可少的一部分,本文就来介绍一下 NumPy 常见的统计函数。最大值与最小值numpy.amin()用于计算数组中的元素沿指定轴的最小值。可以通过 axis 参数传入坐标轴来指定统计的轴,当指定 axis 时,a…

java中如何实现变量可配置_Java基础-如何配置环境变量

Java环境变量详细教程第一步、打开电脑环境变量设置窗口以Win10系统为例子。在桌面找到此电脑,右键此电脑— —>属性,点击属性— —>点击左侧高级系统设置点击高级系统设置点击环境变量第二步、新建JAVA_HOME点击系统变量中的新建,出现输入框&…

python三引号解析_[宜配屋]听图阁

和C语言一样,引号属于特殊功能字符,不能够像普通字符那样直接通过print打印,需要进行一些处理,比如说反斜杠转义等。这里介绍几种打印三引号的方法,希望对需要的朋友有用。1、第一中方法比较简单,直接使用三…

定时执行java程序_如何让Java程序定时运行

由于项目开发的需要,必须实现让一个Java程序定时运行。比如,我的项目中,有一个网络蜘蛛,需要从互联网上抓取数据,与其配合,有另一个程序来对新抓取的页面进行索引的创建,由于数据源更新频率不高…

卡法电子商务 java_javacard DES算法API使用示例

********** 2017年3月15日留言 ——关于java卡Applet系列csdn博文 *************貌似有不少人在看我写的几篇关于java卡applet的博文,也收到了一些评论指正博文错误,或者私信叫我发代码文件过去。在此需要说明的是,java卡applet的这几篇博文…

mysql dump工具升级_MySQL数据库升级

当前不少系统的数据库依旧是MySQL5.6,由于MySQL5.7及MySQL8.0在性能及安全方面有着很大的提升,因此需要升级数据库。本文通过逻辑方式、物理方式原地升级来介绍MySQL5.6 升级至MySQL5.7的方法,并介绍其使用场景。1. 逻辑方式升级逻辑方式升级…

java int 128 ==_为什么 Java Integer 中“128==128”为false,而”100==100“为true?

这是一个挺有意思的讨论话题,让我们用代码说话吧!运行下面的代码:Integer a 128, b 128;System.out.println(a b);Integer c 100, d 100;System.out.println(c d);你会得到:falsetrue基本知识:我们知道,如果两个引用指向同一个对象&…

初始java_第一章__初始JAVA

1.java的三个发展方向:JAVASE(面向对象、API、JVM)、JAVAME(移动设备、游戏、通信)、JAVAEE(JSP、EJB、服务)2.开发JAVA的程序步骤:1.编写源程序 2.编译 3.运行3.JDKJRE开发工具下载java环境jdk 安装并配置环境变量,.安装直接下一步下一步直到…

appium java环境_Appium环境搭建(Windows版)

注:appium安装到C盘,node.js安装到C盘一、安装node.js1、到官网下载node.js:https://nodejs.org/en/download/2、获取到安装文件后,直接双击安装文件,根据程序的提示,完成nodejs的安装。3、安装完成后&…

ie11加载java插件_IE浏览器中ActiveX插件的使用

在某些行业的B/S应用系统中会不可避免的要用到ActiveX浏览器插件,而ActiveX插件只能在IE内核浏览器中运行,而常用的IE浏览器的版本众多,从IE6到IE11,总共有6个版本,这就给开发的应用系统造成了不小的困扰:如…