手把手教你用SPA项目开发之首页导航+左侧菜单
前言
在咋们前后端分离开发过程中,经常会遇到下面的尴尬场景
- 老大,接口文档还没输出,我的好多活干不下去啊!
- 后端小哥,接口写好了没,我要测试啊!
前后端分离之后,前端迫切需要一种机制,不再需要依赖后端接口开发,而今天的主角mockjs就可以做到这一点
什么是Mock.js?
生成随机数据,拦截 Ajax 请求。
通过随机数据,模拟各种场景;不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据;支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等;支持支持扩展更多数据类型,支持自定义函数和正则。
优点是非常简单方便, 无侵入性, 基本覆盖常用的接口数据类型.
再简单点 一句话概括 模拟后台返回数据
MOCK的安装
1.安装mockjs依赖windows+R打开 cmd
特别提醒 这个要安装在你SPA项目里面 不要直接就C上去
npm install mockjs -D #只在开发环境使用
在项目里面配置 测试
为了只在开发环境使用mock,而打包到生产环境时自动不使用mock,我们可以在env中做一个配置
process.env.Mock 指的是我们工程的环境 如果我们是开发环境(我们在开发环境配置了MOCK:‘true’)为true我们读取开发环境 生产环境为false不读取了 后面require(‘@/mock’)是我们读取Mock的配置文件
process.env.MOCK && require(’@/mock’)
import Mock from 'mockjs' //引入mockjs,npm已安装
import action from '@/api/action' //引入请求地址
//全局设置:设置所有ajax请求的超时时间,模拟网络传输耗时
Mock.setup({
// timeout: 400 //延时400s请求到数据
timeout: 200 - 400 //延时200-400s请求到数据
})
//引登陆的测试数据,并添加至mockjs
import loginInfo from '@/mock/json/login-mock.js'
let s1 = action.getFullPath('SYSTEM_USER_DOLOGIN')
Mock.mock(s1, "post", loginInfo)
// Mock.mock(s1, /post|get/i, loginInfo)
// const loginInfo = {
// code: -1,
// message: '密码错误'
// }
//使用mockjs的模板生成随机数据
const loginInfo = {
'code|0-1': 0,
'msg|3-10': 'msg'
}
export default loginInfo;
测试
当我点击授权时 随机返回登录成功或失败
首页导航+左侧菜单
我们现在要登录成功跳转到首页
我们使用使用this.$router.push({})实现路由跳转
跳转到首页之后我们需要做左侧的菜单
1.点击箭头改变左侧样式为左侧树收缩功能(vue总线的概念)
2.退出功能
我们先在程序的入口定义一个跟实例
接下来我们需要在TopNav里面去传输值
效果
点击后
叙述不是很强 有什么问题和建议希望大家留言~~~