路由守卫
router.beforeEach((to,from,next) => { })
全局前置守卫
回调函数中的参数:
to:到哪里去,
from:从哪里来,
next:是一个函数,表示继续执行。
下面例子,判断to.path当前将要进入的路径是否为登录或首页,如果是就执行next(),展示当前界面。如果不是,就弹出alert,然后跳转至登录界面。
这样就可实现,用户在未登录状态下,保持登录页面或首页,不能查看其它页面。
router.beforeEach((to,from,next)=>{
if(to.path == '/login' || to.path == '/index'){
next();
}else{
alert('您还没有登录,请先登录');
next('/login');
}
})
router.afterEach((to,from) => { })
全局后置钩子
回调函数中的参数:
to:到哪里去,
from:从哪里来,
在所有路由跳转结束的时候调用
这些钩子不会接受 next 函数.