全局前置守卫:全局前置守卫是在路由全局范围内注册的导航守卫函数。使用 router.beforeEach() 方法注册全局前置守卫,它会在每次路由导航之前被调用。全局前置守卫常用于进行身份验证、权限控制和页面切换逻辑等操作。如果不调用 next() 函数,路由将不会发生跳转。
路由独享的守卫:路由独享的守卫是在路由配置对象中定义的导航守卫函数。它们仅对特定的路由或路由组件生效,并且可以通过 beforeEnter() 属性来添加。路由独享的守卫常用于针对特定路由的逻辑处理。
组件内的守卫:组件内的守卫是在 Vue 组件内定义的导航守卫函数。例如,beforeRouteEnter、beforeRouteUpdate 和 beforeRouteLeave 函数等都属于组件内守卫函数。组件内守卫常用于处理组件内部的状态,在执行路由跳转时添加特定的逻辑。