常见前端三级菜单授权逻辑讲解(element-ui)

hello你好我是辰兮很高兴你来阅读,最近遇到太多关于三级菜单的逻辑以及做判断时候遇到的问题,刚好抽点时间整理一下相关的知识点!分享获取新知,大家一起进步!

文章目录

      • 一、应用场景
      • 二、逻辑分析


一、应用场景

关于本篇多少三级菜单业务的讲解

关于多级菜单更多是在管理员的页面进行的相关操作,常见的包括授权等!比如一级权限,二级权限,三级权限!

其他的应用场景 比如省/市/区 等等 组织/区域/特定位置 等等

在这里插入图片描述

关于菜单的相关组件 参考bootstrap /element-ui 等前端参考案例

这部分后台的逻辑复杂一点,前端大家直接调用看懂函数即可,下面来简单的和大家分享一下多级菜单的相关逻辑实现!


二、逻辑分析

关于授权的逻辑建议大家从下往上分析!

首先点击三级菜单的时候

逻辑1:如果二级菜单未勾选,我们要实现勾选

逻辑2:此时要判断,如果一级菜单未勾选,我们要实现勾选

在这里插入图片描述

当我们点击二级菜单的时候

逻辑1:我们要实现三级菜单的全部勾选

逻辑2:此时要判断,如果一级菜单未勾选,我们要实现勾选

在这里插入图片描述
当我们点击一级菜单的时候

逻辑1:我们要实现二级菜单的全部勾选

逻辑2:同时实现二级菜单的子菜单的全部勾选

在这里插入图片描述


取消勾选

当我们点击三级菜单全部取消的时候,

逻辑1:我们此时要取消三级对应的二级菜单

逻辑2:同时要判断二级菜单对应的一级菜单它的子菜单是否全部取消
①如果二级菜单全部取消,则一级菜单取消 ②如果二级菜单未全部取消 此时一级菜单保留

在这里插入图片描述
转成做了一个gif的动图来更直观的感受!


当我们点击二级菜单取消勾选的时候

逻辑1:我们此时要取消二级对应的子菜单即三级菜单,所有√取消

逻辑2:同时要判断二级菜单对应的一级菜单它的子菜单(二级菜单本身)是否全部取消
①如果二级菜单全部取消,则一级菜单取消 ②如果二级菜单未全部取消 此时一级菜单保留


当我们点击三级菜单取消勾选的时候

逻辑1:我们此时要取消二级对应的子菜单即三级菜单,所有√取消

逻辑2:同时要判断二级菜单对应的一级菜单它的子菜单(二级菜单本身)是否全部取消
①如果二级菜单全部取消,则一级菜单取消 ②如果二级菜单未全部取消 此时一级菜单保留

在这里插入图片描述


代码只是一种逻辑思维的展示,整体的三级菜单逻辑就是这样,希望我的分享对你有帮助!

copy了element上的一份关于前端三级授权的树形图,想顺路看看结构就看看吧,也可以去官网看!

<el-tree:data="data"show-checkboxnode-key="id":default-expanded-keys="[2, 3]":default-checked-keys="[5]":props="defaultProps">
el-tree><script>export default {data() {return {data: [{id: 1,label: '一级 1',children: [{id: 4,label: '二级 1-1',children: [{id: 9,label: '三级 1-1-1'}, {id: 10,label: '三级 1-1-2'}]}]}, {id: 2,label: '一级 2',children: [{id: 5,label: '二级 2-1'}, {id: 6,label: '二级 2-2'}]}, {id: 3,label: '一级 3',children: [{id: 7,label: '二级 3-1'}, {id: 8,label: '二级 3-2'}]}],defaultProps: {children: 'children',label: 'label'}};}};
script>

The best investment is to invest in yourself.

在这里插入图片描述

2020.10.29 晚22:15 愿你们奔赴在自己的热爱里!


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部