猿问

点击分享出来的页面在进入vue页面时,如果没有登录要进入登录页,进入登录页之后再返回当前页面

点击分享出来的vue页面,进入vue页面时,如果没有登录要进入登录页,进入登录页之后再返回当前页面,如何操作?

浮云间
浏览 2370回答 5
5回答

繁星coding

在main.js文件里router.beforeEach((to, from , next) => {    /*判断下一个路由是否需要登录,对其进行验证*/    if('auth' in to.meta && to.meta.auth === true ) {        hasAuth.... //判断用户是否登录        if(hasAuth) {            /*如果已经登录,可以进入页面*/            next()        }else {            next({                name: 'AuthHome', //登录注册页                query: {                    redirect_url: to.fullPath                }            })        }    }     next()})然后判断登录页面的url是否有redirect_url,存在redirect_url则跳转到redirect_url,否则跳转到首页if (this.$route.query.redirect_url) {    this.$router.replace({      path: this.$route.query.redirect_url    })  } else {    this.$router.replace({      name: 'homeIndex'    })  }

PIPIONE

登录页判断是从哪个页面进来的 然后跳转

临摹微笑

用document.referrer这个属性,得到进入当前页面之前的那个url,再用window.location()返回之前的页面

撒科打诨

分享的时候 加上一个 query:{returnPath:yourPath};然后在 点击登陆按钮的时候 判断 this.$route.query.returnPath 然后跳转首页或者 returnPath
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答