vue权限管理
2025年3月13日大约 2 分钟
vue权限管理
权限控制,确保用户只能访问到被分配的资源
前端权限归根结底是请求的发起权,页面加载触发、按钮点击触发
可以分为四个方面:
- 接口权限
jwt验证 - 按钮权限
- v-if
- 自定义指令
- 菜单权限
- 菜单与路由分离,菜单由后端返回,缺点:菜单与路由做一一对应,全局路由守卫里,每次路由跳转都要做判断
- 菜单和路由都有后端返回,缺点:全局路由守卫里,每次路由跳转都要做判断;前后端配合要求更高
- 路由权限
- 在路由上标记相应的权限信息,每次路由跳转前做校验
- 四种缺点:
- 如果路由很多,对性能会有影响
- 全局路由守卫里,每次路由跳转都要做权限判断
- 菜单信息写死在前端,要改个文字或权限信息,都需要重新编译
- 菜单和路由耦合在一起,定义路由的时候还有添加菜单显示标题,图表之类的信息,而且路由不一定作为菜单显示,还需要更多的字段进行标识
- 初始化,先挂在不需要权限控制的路由,用户登陆后,获取用户的权限信息,筛选出有权限的路由,在全局路由守卫中调用addRoutes添加路由
- 缺点:
- 全局守卫里,每次路由跳转都要做判断
- 菜单信息写死在前端,要改个文字或权限信息,都需要重新编译
- 菜单和路由耦合在一起,定义路由的时候还有添加菜单显示标题,图表之类的信息,而且路由不一定作为菜单显示,还需要更多的的字段进行标识