vue-router

一. 什么是路由导航守卫?

 路由的导航守卫 又叫做路由的钩子函数(生命周期函数)
 就是在跳转页面的时候把路由拦下来 做一些操作 再放行

二. 路由导航守卫有几种?分别是什么?

  1. 全局守卫
    beforeEach 路由进入之前
    afterEach 进入之后

  1. 组件内守卫
    beforeRouteEnter 进入之前
    beforeRouteUpdate 更新之前
    beforeRouteLeave 离开之前

  1. 独享守卫
    beforeEnter 进入之前

三. 路由守卫的参数?

有三个参数:to from ,next

next 这个参数 在路由 3.x 版本的时候 是必须的
但是到了路由 4.x 版本的时候 next 参数变成可选的了

一般来说 :vue2 搭配 3.x 的路由
		  vue3 搭配 4.x 的路由

四. next的参数问题 ?

next 参数 除了括号里可以是空和路径之外 还可以是一个回调函数
(回调函数:一个被作为参数传递的函数)
比如说 token 被存进 vuex 里就可以这么写:

  beforeRouteEnter(to, from, next) {
    // if (localStorage.getItem("token")) {
    //   next();
    // } else {
    //   next("/login");
    // }
    // 在这个组件路由守卫钩子函数中 没有this
    // 因为组件实例还没有创建出来
    next((vm) => {
      // vm就是 这个组件实例 就是this
      if (vm.$store.state.token) {
        next();
      } else {
        next("/login");
      }
    });
  },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值