update route access judge function
This commit is contained in:
parent
6161ca841c
commit
78106687bc
|
|
@ -131,29 +131,24 @@ const hasAccess = (access, route) => {
|
|||
}
|
||||
|
||||
/**
|
||||
* 权鉴
|
||||
* @param {*} name 即将跳转的路由name
|
||||
* @param {*} access 用户权限数组
|
||||
* @param {*} routes 路由列表
|
||||
* @description 用户是否可跳转到该页
|
||||
*/
|
||||
export const canTurnTo = (name, access, routes) => {
|
||||
const getHasAccessRouteNames = (list) => {
|
||||
let res = []
|
||||
list.forEach(item => {
|
||||
const routePermissionJudge = (list) => {
|
||||
return list.some(item => {
|
||||
if (item.children && item.children.length) {
|
||||
res = [].concat(res, getHasAccessRouteNames(item.children))
|
||||
} else {
|
||||
if (item.meta && item.meta.access) {
|
||||
if (hasAccess(access, item)) res.push(item.name)
|
||||
} else {
|
||||
res.push(item.name)
|
||||
}
|
||||
return routePermissionJudge(item.children)
|
||||
} else if (item.name === name) {
|
||||
return hasAccess(access, item)
|
||||
}
|
||||
})
|
||||
return res
|
||||
}
|
||||
const canTurnToNames = getHasAccessRouteNames(routes)
|
||||
return canTurnToNames.indexOf(name) > -1
|
||||
|
||||
return routePermissionJudge(routes)
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue