在开发中我们经常遇到这样的需求,需要用户登录后才可以访问该页面,如果用户没有登录点击该页面时则自动跳转到登录页面,登录后又跳转到链接的页面而不是首页,这种问题该如何去做呢?

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,登录完成后,跳到指定页面或首页在这里插入图片描述

Logo

前往低代码交流专区

更多推荐