问一下路由的问题,登录的页面有个切换功能 有系统账号跟分销账号 默认系统账号的时候登录传了类型1,进到系统页面所有的菜单选项都出来,如果切换到分销账号,传了2登录到页面,只展示两个菜单 之前的前端写死的路由,不是后台接口权限控制,大佬们这个问题怎么解尼
这是ts+vue3+vite后台管理系统
router的index.ts文件代码
import { createRouter, createWebHashHistory } from 'vue-router'
import basicDemo from './modules/basic-demo'
import goodsRoutes from './modules/goods_routes'
import orderRoutes from './modules/order_routes'
import userRoutes from './modules/user_routes'
import memberRoutes from './modules/member_routes'
import appManageRoutes from './modules/app_manage_routes'
import taskRoutes from './modules/task_routes'
import financeRoutes from './modules/finance_routes'
import adManageRoutes from './modules/ad_routes'
import zhongcaoRoutes from './modules/zhongcao_routes'
import type { RouterTypes } from '~/basic'
// 分销账号路由
import accountMenber from './modules/account_menber'
import advertisementMenber from './modules/advertisement_menber'
import Layout from '@/layout/index.vue'
export const constantRoutes: RouterTypes = [
{
path: '/redirect',
component: Layout,
hidden: true,
children: [
{
path: '/redirect/:path(.*)',
component: () => import('@/views/redirect')
}
]
},
{
path: '/login',
component: () => import('@/views/login/index.vue'),
hidden: true
},
{
path: '/404',
component: () => import('@/views/error-page/404.vue'),
hidden: true
},
{
path: '/401',
component: () => import('@/views/error-page/401.vue'),
hidden: true
},
{
path: '/',
component: Layout,
redirect: '/dashboard',
children: [
{
path: 'dashboard',
name: 'Dashboard',
component: () => import('@/views/dashboard/index.vue'),
meta: { title: 'Dashboard', icon: 'dashboard', affix: true }
}
]
},
userRoutes,
memberRoutes,
appManageRoutes,
adManageRoutes,
goodsRoutes,
orderRoutes,
taskRoutes,
financeRoutes,
zhongcaoRoutes,
accountMenber,
advertisementMenber,
{ path: "/:pathMatch(.*)", redirect: "/404", hidden: true }
]
//角色和code数组动态路由
export const roleCodeRoutes: RouterTypes = [
]
/**
* asyncRoutes
* the routes that need to be dynamically loaded based on user roles
*/
export const asyncRoutes: RouterTypes = [
// 404 page must be placed at the end !!!
]
const router = createRouter({
history: createWebHashHistory(),
scrollBehavior: () => ({ top: 0 }),
routes: constantRoutes
})
export default router
系统账号登录到页面展示全部菜单
分销账号登录到页面展示2个菜单
在登录已经做了点击登录按钮已经缓存类型的1 跟 2
可以用
router.addRoute()
来实现动态添加路由。