在router路由的index页面:
1、路由配置信息:设置meta头信息
{ path: '/search', component: () => import('@/views/companySearch/search'), hidden: true ,meta:{type:'login'}},//type变量名可以随便设置
2、在main.js中添加路由导航:
router.beforeEach((to,from,next)=>{
const type=to.meta.type;//type是根据meta中设置的变量
if(type==='login'){
if(getCookie('loginToken')){//使用了js-cookie中间件处理cookie值
next()
}else{
next({
path:'/login',
query:{
redirect:to.fullPath
}
})//保存要跳转的页面路由,作为参数,传到登陆页面
}
}else{
next()
}
})
3、在login.vue页面中设置:
登陆函数中:
let redirect=decodeURIComponent(this.$route.query.redirect||'/')
this.$router.push({ path: redirect});