vue3项目登录成功后根据角色菜单来跳转指定页面(无首页)

前言:需求不想要首页,登录什么角色跳转到这个角色经常使用的页面。(例如:审核者角色的人输入用户名密码成功后就自动跳转到待审核的页面,仓库管理员登录成功则自动跳转到仓库列表)

需要解决的点和想法:

1.登录成功后,后台获取登录用户的角色信息 ,并包含该角色所包含的所有菜单列表和常用列表(需要)。将该信息存入到公共信息中,本文中 Cookie、SessionStorage、LocalStorage 中选择的是 LocalStorage ,

复制代码
        localStorage.setItem("roleName", data.user.roleName);

菜单列表和角色列表,需要含类似于若依项目菜单列表

角色管理

2.原本项目登录成功默认跳转到的地方是首页。所以跳转处'/',修改为:根据角色名字来跳转,(这一块逻辑也可以改为,role下包含常用的路径,直接push('常用路径'))

复制代码
//根据角色跳转
if(localStorage.getItem("roleName") === "管理员"){
    await router.push('/archivedManage')
}else if(localStorage.getItem("roleName") === "确认者"){
    await router.push('/checkManage')
}else{
    await router.push('/reviewManage')
}

3.404页面修改:正常项目都是找不到路径或者路径异常则会刷404页面,然后3s后自动跳转到'/' ,而这个就是首页,但是需求则需要不使用首页,所以此处得修改为上述。

同理全局搜索跳转到router.push('/')都需要修改

相关推荐
WordPress学习笔记21 小时前
解决Bootstrap下拉菜单一级链接无法点击的问题
前端·bootstrap·html
Never_Satisfied21 小时前
C#插值字符串中大括号表示方法
前端·c#
踢球的打工仔1 天前
typescript-类
前端·javascript·typescript
天天打码1 天前
Svelte-无虚拟DOM、极致性能的现代高性能Web开发框架!
前端·node.js·vue·svelte
0思必得01 天前
[Web自动化] Selenium元素定位
前端·python·selenium·自动化·html
EEEzhenliang1 天前
CSS知识概括、总结
前端·css
大阳光男孩1 天前
ElementUI表格懒加载子级更新数据刷新不生效问题
前端·javascript·elementui
wy3136228211 天前
C#——意框架(结构说明)
前端·javascript·c#
研☆香1 天前
JS中的三种显示弹窗
开发语言·前端·javascript
俩毛豆1 天前
HarmonyOS APP开发-一文讲清使用Web组件加载网页的三种方法-《精通HarmonyOS NEXT :鸿蒙App开发入门与项目化实战》读者福利
前端·华为·harmonyos