权限管理
一、简介
在项目中经常有的场景是不同的用户的权限不同,通常有如下场景:
- 不同的用户在页面中可以看到的元素和操作不同
- 不同的用户对页面的访问权限不同
二、如何使用
初始化
权限的定义依赖于初始数据,初始数据需要通过 /member/manage/login/reget 接口获取后存储在 user store中。
user store定义在@/stores/user.ts。
此后台模板用户接口基于
玉林香料项目运营平台改造,需要在用户信息接口中返回urls字段,这个字段中返回用户拥有访问权限的页面路由,如果路由地址为外部链接,则此路由为/{链接地址},如果有父级菜单,例如父级菜单为链接,path为/link,则urls中应返回/link/{链接地址}。
路由权限控制
路由权限控制依赖路由全局守卫,在路由全局守卫中会判断当前路径是否包含在用户所拥有访问权限的路由列表,如果包含则放行,不包含则重定向到404页面。
另外在路由配置中的路由元数据中可以配置 auth:false 来取消当前路由的权限控制。