当前位置:网站首页 > 技术经理的晋升之路 > 正文

路由守卫的三个参数(路由的守卫和导航规则)



前端项目基于 element-ui-admin 实现,它的 路由和侧边栏 是组织起一个后台应用的关键骨架。

侧边栏和路由是绑定在一起的,所以你只有在 @/router/index.js 下面配置对应的路由,侧边栏就能动态的生成了,大大减轻了手动重复编辑侧边栏的工作量。

当然,这样就需要在配置路由的时候,遵循一些约定的规则。

首先,我们了解一下本项目配置路由时,提供了哪些配置项:

普通示例

外链示例

项目的路由分为两种:静态路由、动态路由。

静态路由,代表那些不需要动态判断权限的路由,如登录页、404、个人中心等通用页面。

在 @/router/index.js 的 ,就是配置对应的公共路由。如下图所示:

静态路由

动态路由,代表那些需要根据用户动态判断权限,并通过 addRoutes 动态添加的页面,如用户管理、角色管理等功能页面。

在用户登录成功后,会触发 请求后端的菜单 RESTful API 接口,获取用户有权限的菜单列表,并转化添加到路由中。如下图所示:

动态路由

使用 方法,可以实现跳转到不同的页面。

项目的菜单在 [系统管理 -> 菜单管理] 进行管理,支持无限层级,提供目录、菜单、按钮三种类型。如下图所示:

系统管理 -> 菜单管理

菜单可在 [系统管理 -> 角色管理] 被分配给角色。如下图所示:

系统管理 -> 角色管理

① 大多数情况下,目录是作为菜单的【分类】:

新增目录 —— 菜单的分类

② 目录也提供实现【外链】的能力:

新增目录 —— 外链

新增菜单

新增按钮

前端通过权限控制,隐藏用户没有权限的按钮等,实现功能级别的权限。

指令,基于权限字符,进行权限的控制。

指令,基于角色标识,机进行的控制。

在某些情况下,它是不适合使用 或 指令,如元素标签组件。此时,只能通过手动设置 ,通过使用全局权限判断函数,用法是基本一致的。

由于目前 和 是强耦合的,而且查看 Vue 的文档和源码不难发现 的 默认是优先匹配组件的 ,所以在编写路由 和路由对应的 view component 的时候一定要确保 两者的 name 是完全一致的。

注意,切记 view component 的 命名时候尽量保证唯一性,切记不要和某些组件的命名重复了,不然会递归引用最后内存溢出等问题。

① router 路由的 声明如下:

② view component 的 声明如下:

一定要保证两者的名字相同,切记写重或者写错。默认如果不写 就不会被缓存,详情见 issue

示例

到此这篇路由守卫的三个参数(路由的守卫和导航规则)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 路由守卫有哪些人物(路由守卫写在哪)2025-02-16 16:00:09
  • 反激电路原理详解视频(反激电路原理详解视频教学)2025-02-16 16:00:09
  • 51单片机电子时钟代码(51单片机时钟电路程序)2025-02-16 16:00:09
  • 电路图hg(电路图HG表示什么意思)2025-02-16 16:00:09
  • 开始中的多级列表在哪里(多级列表起始编号总是从2开始)2025-02-16 16:00:09
  • vue中的父子组件传值(vue父子组件之间的传值)2025-02-16 16:00:09
  • 双管反激电路(双管反激电路和单管区别)2025-02-16 16:00:09
  • pdf怎么删除某一页面(pdf怎么删除某一页面的页码)2025-02-16 16:00:09
  • 反激电路工作原理(反激电路工作原理视频)2025-02-16 16:00:09
  • 电路原理图gnd(电路原理图怎么画)2025-02-16 16:00:09
  • 全屏图片