时间:2021-05-26
在开发中我们经常遇到这样的需求,需要用户登录后才可以访问该页面,如果用户没有登录点击该页面时则自动跳转到登录页面,登录后又跳转到链接的页面而不是首页,这种问题该如何去做呢?
1、在路由器router下的 index.js 的配置中,给需要拦截登录的页面的路由上加一个meta: {loginRequest: true} ,其中loginRequest 变量自己可以随意定义
2、在main.js文件里面添加beforeEach钩子函数
解释:
router.beforeEach((to, from, next) => { } 三个参数:
to:即将要进入的目标 路由对象
from:当前导航正要离开的路由
next:(function函数) 调用next() 进行管道中的下一个钩子
next() 无参 进行 下一个钩子函数
next({ path:'/xxx' , query:{}}) 携带参数跳到xxx页面
3、登录页面login.vue,登录完成后,跳到指定页面或首页
补充知识:vue实现登录后跳转到来源路由url
sessionStorage存储from.path来源的路由url,如果不是登录或者注册就拦截跳到登录页,如果是就放行
router.beforeEach(function(to,from,next){ if(to.path!='/login' && to.path!='/register'){ sessionStorage.setItem('referrer',from.path) //储存来源路由 alert('请登录') next({ path:'/login' }) }else{ next() } })登录后判断sessionStorage中是否有存储来源路由,如果有就跳转到这个路由
//获取来源页路由var referrer = sessionStorage.getItem('referrer');if(referrer != null){ this.$router.push(referrer)}else { this.$router.push('/home')}以上这篇Vue登录拦截 登录后继续跳转指定页面的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
今天给大家写一篇关于vue校验登录状态,如果是非法登录就跳转到登录页面的逻辑首先需要写一个路由守卫,它的原理是每次路由发生变化时触发具体写法如下:router.
环境:vue2.9.3;webpack;vue-router目的:实现未登录跳转例子:直接在url地址栏输入...../home,但是这个页面要求需要登陆之后才
itunes注册id的方法是: 1、首先打开iTunes。点击右上角“登录”。 2、弹出登录框,在这里点“创建新账户”。 3、跳转到注册页面之后点击继续,
本文实例为大家分享了AndroidWalker登录记住密码页面的具体代码,供大家参考,具体内容如下目标效果:这一次修改的不多,添加了点击用户登录的跳转,登录页面
用户登录后关闭登录页面wordpress默认的登录页面是:http://wp目录/wp-login.php,登录后会自动跳转到:http://wp目录/wp-a