| | |
| | | const routersMenu = JSON.parse(store.state.user.menus) |
| | | // 路由分两块,左侧列表, 最右侧员工下拉菜单 |
| | | console.log('routersMenu', routersMenu) |
| | | const currentRoutes = router.options.routes |
| | | let currentRoutes = [] |
| | | currentRoutes = router.options.routes |
| | | if (routersMenu.length > 0) { |
| | | routersMenu.forEach(item => { |
| | | if (item.url === 'dropDown') { |
| | |
| | | // } |
| | | // currentRoutes.splice(currentRoutes.length, 0, notFound) |
| | | } |
| | | router.addRoutes(currentRoutes) |
| | | console.log('currentRoutes', currentRoutes) |
| | | const uniqueRoutes = removeDuplicateRoutes(currentRoutes) |
| | | console.log('uniqueRoutes', uniqueRoutes) |
| | | router.addRoutes(uniqueRoutes) |
| | | } |
| | | function removeDuplicateRoutes(routes) { |
| | | const routeNames = new Set() |
| | | return routes.filter(route => { |
| | | if (routeNames.has(route.path)) { |
| | | return false // 如果名称已存在,则过滤掉这条路由 |
| | | } |
| | | routeNames.add(route.path) // 添加名称到集合中 |
| | | return true |
| | | }) |
| | | } |