vuejs + laravel 中的权限导航?
Permission navigation in vuejs + laravel?
我有一个活动列表页面。现在我想当用户登录时,如果他无权访问活动列表页面,它不会显示菜单并且不允许访问 url ?给我想法。谢谢
更新:我的问题与此类似:Router permission in vuejs + laravel?
您可以将状态存储在 Vuex 存储中。
然后在路由器中,您需要检查用户是否登录,否则将用户重定向到登录页面。
router.beforeEach((to, from, next) => {
if (to.matched.some(record => record.meta.requiresAuth)) {
// this route requires auth, check if logged in
// if not, redirect to login page.
if (!store.getters.isLoggedIn) {
next({ name: 'Login' })
} else {
next() // go to wherever I'm going
}
} else {
next() // does not require auth, make sure to always call next()!
}
})
原回答如下:
如果只是显示或隐藏导航栏或菜单等元素,您可以使用 v-if
<Navigationbar v-if="userLoggedIn" />
<Menu v-if="userLoggedIn" />
我有一个活动列表页面。现在我想当用户登录时,如果他无权访问活动列表页面,它不会显示菜单并且不允许访问 url ?给我想法。谢谢
更新:我的问题与此类似:Router permission in vuejs + laravel?
您可以将状态存储在 Vuex 存储中。 然后在路由器中,您需要检查用户是否登录,否则将用户重定向到登录页面。
router.beforeEach((to, from, next) => {
if (to.matched.some(record => record.meta.requiresAuth)) {
// this route requires auth, check if logged in
// if not, redirect to login page.
if (!store.getters.isLoggedIn) {
next({ name: 'Login' })
} else {
next() // go to wherever I'm going
}
} else {
next() // does not require auth, make sure to always call next()!
}
})
原回答如下:
如果只是显示或隐藏导航栏或菜单等元素,您可以使用 v-if
<Navigationbar v-if="userLoggedIn" />
<Menu v-if="userLoggedIn" />