美文网首页
vue导航守卫

vue导航守卫

作者: 牛妈代代 | 来源:发表于2019-07-26 10:30 被阅读0次

根据作用域的不同,vue导航守卫分三种:全局导航守卫、组件内部导航守卫、路由独享守卫

全局导航守卫,在main.js中定义导航守卫

1、router.beforeEach((to, from, next) => { /* must call `next` */ })   //路由跳入前判断
2、router.beforeResolve((to, from, next) => { /* must call `next` */ })  
3、router.afterEach((to, from) => {})  //路由跳出前执行函数,确定后跳出,然后在显示页面;

组件内部导航守卫,只作用于该组件;为啥我一直想叫导航卫士呢,好吧

1、beforeRouteEnter(to,from,next){}      //路由跳入前执行函数,不可访问this.data
2、beforeRouteLeave(to,from,next){}     //路由跳出执行函数,确认后跳出
3、beforeRouteUpload(to,form,next){}    //在当前路由改变,但是该组件被复用时调用

注意,beforeRouteEnter(to,from,next){}无法调用data数据,data为渲染,可以使用next()回调来获取,next(vm=>{ console.log(vm.msg) })

路由独享守卫

定义在routes里面的,作用与制定路由
beforeEnter:(to, from, next)    //路由独享守卫;

导航钩子有3个参数:
1、to:即将要进入的目标路由对象;
2、from:当前导航即将要离开的路由对象;
3、next :调用该方法后,才能进入下一个钩子函数(afterEach)。
next()//直接进to 所指路由
next(false) //中断当前路由
next('route') //跳转指定路由
next('error') //跳转错误路由

相关文章

  • vue导航守卫

    导航守卫:vue-router主要提供跳转或取消的方式守卫导航, 导航守卫分为全局前置守卫、全局解析守卫、全局后置...

  • vue导航守卫

    根据作用域的不同,vue导航守卫分三种:全局导航守卫、组件内部导航守卫、路由独享守卫 全局导航守卫,在main.j...

  • vue-router进阶

    导航守卫 vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航(路由发生改变才会守卫)。参数 ...

  • 导航守卫

    vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航 全局守卫 全局前置守卫 当一个导航触发时...

  • vue-router导航守卫&&滚动&&路由懒加载

    导航守卫 正如其名,vue-router提供的导航守卫主要用来通过跳转或取消的方式守卫,有多种机会植入路由导航过程...

  • web前端面试题@九(vue导航守卫)

    什么是导航守卫? 正如其名,vue-router提供的导航守卫主要用来通过跳转或取消的方式守卫导航。有多种机会植入...

  • 导航守卫以及keep-alive

    一 什么是导航守卫? vue-router提供的导航守卫主要用来监听监听路由的进入和离开的.vue-router提...

  • vue路由导航守卫

    vue路由导航守卫:导航守卫通俗来说就是utr跳转的监听,当a跳转到b的过程执行的函数 导航守卫的使用方法 首先定...

  • vue-router进阶

    导航守卫 vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航。参数或查询的改变并不会触发进入...

  • vue导航守卫

    “导航”表示路由正在发生改变。 正如其名,vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航...

网友评论

      本文标题:vue导航守卫

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