vue中导航守卫有哪三种?分别有什么作用

全局路由守卫   

组件路由守卫

路由独享守卫

路由守卫主要用来通过跳转或取消的方式守卫导航。有多种机会植入路由导航过程中:全局的, 单个路由独享的, 或者组件级的。

作用是路由跳转前对路由进行判断,防止未登陆的用户跳转到其他页面去

Vue Router提供了三种导航守卫:

    (1).全局前置守卫(Global Before Guards):通过router.beforeEach方法添加,会在每个路由切换前都执行。可以用于全局的身份验证、权限检查等。

    (2).路由独享的守卫(Per-Route Guards):通过在路由配置中使用beforeEnter属性添加,只在特定的路由切换前执行。可以用于特定路由的身份验证、权限检查等。

    (3).组件内的守卫(In-Component Guards):通过在Vue组件中定义beforeRouteEnter、beforeRouteUpdate和beforeRouteLeave等生命周期钩子函数来添加。用于控制组件的路由导航逻辑。

to:目标路由对象;

from:即将要离开的路由对象;

next:它是最重要的一个参数,调用该方法后,才能进入下一个钩子函数。

        next()//直接进to 所指路由
        next(false) //中断当前路由
        next('route') //跳转指定路由
        next('error') //跳转错误路由

你可能感兴趣的:(vue.js,前端,javascript)