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

2024-01-07 19:21:39

全局路由守卫???

组件路由守卫

路由独享守卫

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

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

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') //跳转错误路由

文章来源:https://blog.csdn.net/qq_68695044/article/details/135332283
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。