首页导航+左侧菜单

本文介绍了Mock.js在前端开发中的应用,包括它的主要特性:丰富的数据类型和Ajax请求拦截。详细阐述了Mock.js的使用步骤,如安装、引入、目录结构设定以及在vue项目的具体实践,如在AppMain.vue组件的创建和组件间数据传递中的运用。
摘要由CSDN通过智能技术生成

目录

1. 什么是Mock.js?

使用场景:

Mock.js的两个重要的特性 :

数据类型丰富:

拦截Ajax请求:

2. Mock.js使用步骤

2.1 安装mockjs依赖

 2.2 引入

(1)dev.env

 (2)prod.env

 (3)main.js

 2.3 目录和文件创建

2.4 为每个*.vue定义单独的xxx-mock.js文件

2.5 在index.js中导入xxx-mock.js,并添加拦截路由配置

前端debugger:

 3.  后台首页AppMain.vue的创建

3.1 Container布局容器

3.2 TopNav

3.3 LeftAside

4.  vue组件之间传递数据(总线)


1. 什么是Mock.js?

Mock.js是一个模拟数据的生成器,用来帮助前端调试开发、进行前后端的原型分离以及用来提高自动化测试效率。

使用场景:

前后端分离开发开发过程当中,经常会遇到以下几个尴尬的场景:
   1. 老大,接口文档还没输出,我的好多活干不下去啊!
   2. 后端小哥,接口写好了没,我要测试啊!
   前后端分离之后,前端迫切需要一种机制,不再需要依赖后端接口开发,而今天的主角mockjs就可以做到这一点

Mock.js的两个重要的特性 :

数据类型丰富:

支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。

拦截Ajax请求:

不需要修改既有代码,就可以拦截Ajax请求,返回模拟的响应数据。

此处给大家提供一个Mock.js的官方网站地址:

http://mockjs.com/

2. Mock.js使用步骤

2.1 安装mockjs依赖

 2.2 引入

为了只在开发环境使用mock,而打包到生产环境时自动不使用mock,我们可以在env中做一个配置

(1)dev.env

 (2)prod.env

 (3)main.js

 注:import是ES6标准中的模块化解决方案,require是node中遵循CommonJS规范的模块化解决方案,后者支持动态引入,也就是require(${path}/xx.js)

 2.3 目录和文件创建

 在src目录下创建mock目录,定义mock主文件index.js,并在该文件中定义拦截路由配置

导入公共模块及mockjs全局设置

全局设置:设置所有ajax请求的超时时间,模拟网络传输耗时

2.4 为每个*.vue定义单独的xxx-mock.js文件

注1:可以添加自定义的json数据
注2:还可以通过mockjs的模板生成随机数据

2.5 在index.js中导入xxx-mock.js,并添加拦截路由配置

如何同时拦截get/post请求,并对get和post请求大小写不敏感呢?

那就请使用正则表达式吧

GET请求 

前端debugger:

方式一:

方式二:

 

 标记的断点会记录在这里:

 3.  后台首页AppMain.vue的创建

3.1 Container布局容器

3.2 TopNav

注1:使用组件之间通信,完成左侧菜单折叠

TopNav页面的<template>标签:

TopNav页面的<script>标签: 

3.3 LeftAside

LeftAside的template标签

 LeftAside的script标签

4.  vue组件之间传递数据(总线)

 根据vue组件之间传递数据实现element-ui的NavMenu菜单折叠、展开效果。

4.1 子组件往父组件传递数据(this.$emit)

 TopNav -> Main

4.2 父组件往子组件传递数据(props)

  Main -> LeftAside
    

 

             

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值