vue-router

1.路由拦截

router.beforeEach((to, from, next) => {
  const userInfo=sessionStorage.getItem(userInfo)
  const curToken=sessionStorage.getItem(curToken)
  console.log(sessionStorage.getItem("userInfo"),sessionStorage.getItem("curToken"));
  if(sessionStorage.getItem("userInfo") && sessionStorage.getItem("curToken")){
      next()
  }else{
    //如果用户token不存在则跳转到login页面
    if (to.path === '/') {
      next()
    } else {
      next('/')
    }
  }
  })
 
2.
//获取原型对象上的push函数
const originalPush = VueRouter.prototype.push
//修改原型对象中的push方法
VueRouter.prototype.push = function push(location) {
  return originalPush.call(this, location).catch(err => err)
}
原文地址:https://www.cnblogs.com/wangyue6/p/13821241.html