首页 > 其他分享 >vue路由拦截器

vue路由拦截器

时间:2022-08-30 16:12:24浏览次数:70  
标签:拦截器 console log vue 跳转 fullPath 路由

vue路由拦截器

有三种路由拦截器:全局的,针对单个路由的,针对单个组件的

1.全局的路由拦截器

写在router下的index.js的export default router 之前的代码。
前置拦截器:

router.beforeEach((to, from)=> { //from中包含跳转前的路由信息,to包含跳转到的目的路由信息
  console.log(from.fullPath);
  console.log(to.fullPath);
  return true;//返回true表示允许跳转,返回false则不会跳转
})

后置拦截器

router.afferEach((to, from)=> {
  console.log(from.fullPath);
  console.log(to.fullPath);
})

在前置路由拦截器中我们可以写上查看用户是否登录,如果没有登录则让其跳转到登录页面。

2.单个路由的拦截器,写法和上面差不多,只是作为beforeEnter和afferEnter属性写在路由属性中

{
    path: '/home',
    name: 'Home',
    component: ()=>import('../views/Home.vue'),
    beforeEnter:(to,from)=>{
      console.log(from.fullPath);
      console.log(to.fullPath);
      return true;
    },
    children:[{
      path:'article',
      component:()=>import('../views/Article.vue'),
    }]
  },

3.单个组件的路由拦截器则是在组件中配置beforeEnter和afterEnter两个方法,和生命周期函数的使用方法一样

标签:拦截器,console,log,vue,跳转,fullPath,路由
From: https://www.cnblogs.com/bingquan1/p/16639742.html

相关文章

  • vue3 Teleport 传送门
    先放个官方文档链接~某位同事研究vue3时,发现vue3的Teleport使用起来有点问题。<template><divclass="test">1<divclass="qwe">2</div><teleportto=".q......
  • vue2和vue3的modules :
    store/modules/home.jsexportdefault{state:{//服务器数据banners:[],recommends:[]},mutations:{changeBanners(state,banners......
  • vite+vue2 的学习与问题记录
    描述按照博文[https://juejin.cn/post/6988808776291713060]指导步骤执行完成。问题记录运行npmrundev控制台显示failedtoloadconfigfrom/Users/study-vite-vu......
  • vue3+vuex 的 action 来发送网络请求的
    <template><divclass="app"><h3>HomePage</h3><ul><templatev-for="itemin$store.state.banners":key="item.acm"><li>{{item.title......
  • 058_末晨曦Vue技术_过渡 & 动画之过渡的类名
    进入/离开&列表过渡点击打开视频讲解更加详细概述Vue在插入、更新或者移除DOM时,提供多种不同方式的应用过渡效果。包括以下工具:在CSS过渡和动画中自动应用cl......
  • vue2和vue3的区别?
    vue2和vue3的主要区别在于以下几点:1、生命周期函数钩子不同2、数据双向绑定原理不同3、定义变量和方法不同4、指令和插槽的使用不同5、API类型不同6、是否支持碎片7......
  • 关于vue.js:vue使用sass中deep报错
    转自:https://lequ7.com/guan-yu-vuejsvue-shi-yong-sass-zhong-deep-bao-cuo.html之前装了一个vue3.0的环境,结果搬砖的时候发现vue2.0的项目跑不了了然后照着网上说......
  • 从他人的项目和文章去了解鉴权--前端路由
    拜读了大佬的鉴权思路和源码之后对比自己的项目总结的思考首先在登录方面大佬代码相对的严谨this.$store.dispatch('LoginByUsername',this.loginForm).then(()=>{......
  • vue ctrl + 鼠标左键组合键
    <[email protected]="handleMouseDown($event)">/*鼠标按下方法*/handleMouseDown(event){if(event.ctrlKey&&event.which===1){//ctrl+鼠标左键......
  • 路由跳转的方式和传参——方式之声明式导航、编程式导航 & 传参之params和query
    路由跳转的方式和传参——方式之声明式导航、编程式导航&传参之params和query1.路由跳转的2种方式第一种:声明式导航router-link(必须要有to属性),可以实现路由的跳转......