Vue项目跳转登录 从哪个页面跳转 回哪个页面

相信很多在做PC端项目的朋友都会遇到一个需求,就是用户在未登录状态从其他页面触发跳转到登录页,当用户登录成功后,再跳回用户原来的页面。

首先,我们来想一下完成这个需求的思路,要跳转那就要有路径,之前我们会在login登录里写登录成功后跳到home首页,那要完成这个需求的话,很显然是不能这样写的,我们都知道,vue给我们一个很好用的东西,叫做路由守卫,就是在路由跳转时,回触发相应的路由守卫。相关代码如下,

在router/index.js写:

//当路由跳转时会触发路由前置守卫

//to:表示到哪里去  from:表示从哪里来 next:表示放行继续往下走

router.beforeEach((to, from, next) => {

//判断如果要跳转到login页面

    if (to.path == '/login') {

//将当前的路由路径保存

      localStorage.setItem("preRoute", router.currentRoute.fullPath)

    }

    next()

  })

那么此时我们就获取到了路由跳转来的地址

在login页面判断:注意:要判断是否为注册页面跳转 注册页面跳转登录页 不能回跳 跳到home页面

let refer = localStorage.getItem('preRoute')

        if (refer != null&&refer!='/register') {

        this.$router.push({ path: refer })

        return

}

 this.$router.push({ path: '/' })

 

 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值