美文网首页
vue-router导航守卫

vue-router导航守卫

作者: 海娩 | 来源:发表于2018-07-28 20:58 被阅读0次

    vue-router的守卫可以分为三类守卫, 全局设置,路由设置,组件内部设置

    全局设置

    在全局的地方进行书写的,就是进行全局的拦截,不管你在在这路由里的哪个路由,都会被拦截到,

    beforeEach:全局前置守卫

    按着名字也很好理解,each就是每一个的意思
    一般作为一个网站的入口处,你不管从哪个进入,首先进行判断你是否登录这个状态,如果为登录就跳到登录页面。

    afterEach:全局后置守卫

    跟全局前置守卫相反

    beforeResolve:全局解析守卫

    在导航被确认之前,同时在所有组件内守卫和异步路由组件被解析之后,解析守卫就被调用,就是对于一个路由来说,进入组件后的最后一步

    路由配置守卫

    就是是在路由配置的位置进行,就是beforeEnter这个方法,这里就是在路由进来的时候进行拦截的,


    image.png

    不过在路由配置这里的拦截只有这一个方法

    组件内部守卫

    这里有三个方法:

    beforeRouteEnter

    渲染该组件的路由被确认之前调用,这个时候组件还没有被建立,所以这个时候也没有this指向

    beforeRouteUpdate (2.2 新增)

    这个方法应用于一个组件对应多个路由的切换所执行的方法,可以运用在你切换路由来调用该组件内部不同方法,这个时候组件已经有this指向了,所以就可以通过this.XXX() 的方法来进行调用内部方法

    beforeRouteLeave

    这个在当前组件离开组件所对应的路由所执行的方法,可以运用在比如对组件内一些数据修改后的保存方面,


    image.png

    相关文章

      网友评论

          本文标题:vue-router导航守卫

          本文链接:https://www.haomeiwen.com/subject/lfhamftx.html