vue之路由守卫

本文介绍了Vue.js的路由守卫功能,主要用于在路由切换前或后执行特定操作。包括全局路由钩子、单个路由钩子和路由组件钩子的实现方式,尤其强调了在进入路由前的beforeEnter钩子函数及其next()调用的重要性。
摘要由CSDN通过智能技术生成

一、路由守卫用来干啥

在某些情况下,当路由跳转前或跳转后、进入、离开某一个路由前、后,需要做某些操作,就可以使用路由钩子来监听路由的变化

二、路由守卫实现方式

//通过路由钩子绑定事件

全局路由钩子:
//进入到某个路由组件之前
router.beforeEach((to, from, next) => {
	//会在任意路由跳转前执行,next一定要记着执行,不然路由不能跳转了
  console.log('beforeEach')
  console.log(to,from)
  next()
})

//进入到某个路由组件之后
router.afterEach((to, from) => {
    //会在任意路由跳转后执行
  console.log('afterEach')
})
单个路由钩子:

只有beforeEnter,在进入前执行,to参数就是当前路由

 routes: [
    {
      path: '/foo',
      component: Foo,
      //当进入到foo路由之前,就会触发
      beforeEnter: (to, from, next) => {
        // ...
        next() //必须要执行next之后,对应的Foo组件才可以正常显示出来
      }
    }
  ]
路由组件钩子:
  //进入到某个组件之前的拦截,获取不到组件内部的this
  beforeRouteEn
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值