学习笔记之vue根据权限动态添加路由

news/2024/7/7 21:21:40

路由守卫判断

    router.beforeEach((to, from, next) => {if (to.path == '/login') {sessionStorage.removeItem('user');}if (!user && to.path !== '/login'&&location.search !== '?validate') {next({ path: '/login' })} else {next()}
})
复制代码

点击登陆后,用addRoutes实现动态路由

    this.$router.addRoutes([].concat(routers));
复制代码

之前通过$router.options.routes访问路由数据实现动态菜单,但这个数据不是响应式的,无法追踪动态路由的变化 所以点击登录后的代码如下

    this.$router.options.routes = routers;this.$router.addRoutes([].concat(routers));
复制代码

addRoutes和Vuex一样都是刷新后数据会清空,刷新会导致Vue重新实例化,路由也恢复到了初始路由 这个时候已经存储了登录信息,则在main.js里面根据已存储的登录信息设置路由

    let user = JSON.parse(sessionStorage.getItem('user'));const defaultRoutes =user && user.owner.type == 'area'?routes.city :user && user.owner.type == 'zlm'?routes.admin:user && user.owner.type == 'hotel'?routes.hotel:user && user.owner.type == 'hotel_group'?routes.group :routes.home;const router = new VueRouter({routes: defaultRoutes})复制代码

http://lihuaxi.xjx100.cn/news/235773.html

相关文章

mongodb使用常用语法,持续更新

设置快捷命令D:\mongodb4.0.8\bin>mongod --config "D:\mongodb4.0.8\mongo.conf" --auth --install --serviceName "MongoDB"mongodb配置文件#数据库路径dbpathD:\mongodb4.0.8\data\db#日志输出文件路径logpathD:\mongodb4.0.8\data\log\MongoDB.log#…

SAP创建webservice

目录 一、创建webservice 二、更改webservice 三、SoapUI测试webservice 四、查看webservice日志及排错 一、创建webservice 以用户相关的函数User为例创建webservice,事务码bapi查看bapi函数,BasisComponents-Security-User,选择Tools…

固定资产打印条码标签应用方案

条码在固定资产管理中的应用方案: 应用客户案例: 河南省交通规划勘察设计院 黄河水文勘察测绘局 以实物管理为基础,以条码技术的应用为特点。通过先进的条码技术对固定资产实物从购置、领用、转移、盘点、清理到报废等方面进行全方位准确监管…

SAP事务码f-02做账界面显示“页数”字段

事务码 f-02 做账界面,没有显示页数。 用户账号的参数添加 CSF (Country-Specific Fields)参数,参数值为 CN(伟大的China) 再次来到 f-02 的界面,显示了页数字段

深度分析Java的枚举类型——枚举的线程安全性及序列化问题

点击关注,快速进阶高级架构师作者:Hollis写在前面:Java SE5提供了一种新的类型-Java的枚举类型,关键字enum可以将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用,这是…

MATLAB矩阵操作

转载于:https://www.cnblogs.com/souhaite/p/10727988.html

网络管理员比赛回顾03-单臂路由

三层交换机sw1配置&#xff0c;划分三个vlan&#xff0c;3个接入端口分别允许各自vlan通过&#xff0c;一个骨干端口允许所有vlan通过。 <Huawei>undo terminal monitor <Huawei>sy [Huawei]sysname sw1[sw1]vlan batch 10 20 30 [sw1]interface g0/0/1 [sw1-Gig…

某网站破解备忘

某网站采用了多种反破解手段&#xff0c;特此开贴记录分析破解过程。 工具和参考 awesome-java-crawler - 我收集的爬虫相关工具和资料 java-curl - 本人写的java HTTP库&#xff0c;可用来替换chrome网络后端&#xff0c;更方便控制底层行为&#xff0c;如缓存、代理、监控、修…