隐藏 vue 路由
hiding the vue routes
我有我的 vue 路由
const ifAuthenticated = (to, from, next) => {
if (store.getters.isAuthenticated) {
next()
return
}
next('/login')
}
const checkAgentPermissions = () => {
return false
}
export const routes = [
{
path: '/users',
beforeEnter: ifAuthenticated,
component: Layout,
meta: { title: 'Agent Onboarding', icon: 'address-card' },
hidden: checkAgentPermissions,
children: [
{
path: '',
name: 'Users',
component: () => import('@/views/users/index.vue')
},
{
.....some more childrens
}
]
}
]
但通过函数调用时,隐藏始终为真。
如果我将隐藏在 checkAgentPermissions 中的选项更改为 false
hidden: false // works perfectly
为什么函数不 return false,实际上我需要在 fn 中做一些检查,然后 return true/false 视情况而定。
forEach 路由我通过检查隐藏是否 true/false 在 vue 组件中呈现它们 true/false。
尝试执行你的隐藏函数:
hidden: checkAgentPermissions(),
children: [
...
我有我的 vue 路由
const ifAuthenticated = (to, from, next) => {
if (store.getters.isAuthenticated) {
next()
return
}
next('/login')
}
const checkAgentPermissions = () => {
return false
}
export const routes = [
{
path: '/users',
beforeEnter: ifAuthenticated,
component: Layout,
meta: { title: 'Agent Onboarding', icon: 'address-card' },
hidden: checkAgentPermissions,
children: [
{
path: '',
name: 'Users',
component: () => import('@/views/users/index.vue')
},
{
.....some more childrens
}
]
}
]
但通过函数调用时,隐藏始终为真。 如果我将隐藏在 checkAgentPermissions 中的选项更改为 false
hidden: false // works perfectly
为什么函数不 return false,实际上我需要在 fn 中做一些检查,然后 return true/false 视情况而定。
forEach 路由我通过检查隐藏是否 true/false 在 vue 组件中呈现它们 true/false。
尝试执行你的隐藏函数:
hidden: checkAgentPermissions(),
children: [
...