欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

vue路由拦截及页面跳转的设置方法

程序员文章站 2022-04-12 22:02:02
路由设置:router/index.js export default new router({ routes: [ { path: '/...

路由设置:router/index.js

export default new router({ 
 routes: [ 
  { 
   path: '/selfcenter', 
   name: 'selfcenter', 
   meta: { 
    requireauth: true // 配置此条,进入页面前判断是否需要登陆 
   }, 
   component: selfcenter 
  } 
 ] 
}) 

main.js:

/* eslint-disable no-new */ 
router.beforeeach((to, from, next) => { 
 if (to.matched.some(res => res.meta.requireauth)) { // 验证是否需要登陆 
  if (sessionstorage.getitem('sid')) { // 查询本地存储信息是否已经登陆 
   next(); 
  } else { 
   next({ 
    path: '/login', // 未登录则跳转至login页面 
    query: {redirect: to.fullpath} // 登陆成功后回到当前页面,这里传值给login页面,to.fullpath为当前点击的页面 
    }); 
  } 
 } else { 
  next(); 
 } 
}); 

login.vue:

登陆成功后:

sessionstorage.setitem('sid', res.data.data.sid); // 设置本地存储信息 
this.$router.push(this.$route.query.redirect); // 跳转至前一页,this.$route.query.redirect是获取上面传递过来的值 

 总结

以上所述是小编给大家介绍的vue路由拦截及页面跳转的设置方法,希望对大家有所帮助