铁汁手把手教你用SPA项目开发之首页导航+左侧菜单

手把手教你用SPA项目开发之首页导航+左侧菜单

前言

在咋们前后端分离开发过程中,经常会遇到下面的尴尬场景

  1. 老大,接口文档还没输出,我的好多活干不下去啊!
  2. 后端小哥,接口写好了没,我要测试啊!

前后端分离之后,前端迫切需要一种机制,不再需要依赖后端接口开发,而今天的主角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里面去传输值

在这里插入图片描述
在这里插入图片描述
效果
在这里插入图片描述
点击后
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

叙述不是很强 有什么问题和建议希望大家留言~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值