//参数1:后端返回的路由,参数二:前端路由数组
function dynamicRoutes(permissions, routes) {
const result = []
// 根据权限菜单计算动态路由
permissions.forEach(permission => {
const route = routes.find(route => route.path === permission.menu.url)
if (route) {
const copy = { ...route }
if (permission.children && route.children) {
const children = dynamicRoutes(permission.children, route.children)
copy.children = children
}
result.push(copy)
}
})
return result
}
const result = dynamicRoutes(this.permissions, this.routes)
console.log('结果:', result)
11-17
311
03-16
3369
01-16
6478
12-09
2046
12-29
4772
03-03
4178