26、router.beforeEach路由拦截


为了防止用户未登录直接修改路径来访问页面,解决办法:

在main.js文件中加入以下代码:

// 路由拦截
router.beforeEach((to, from, next) => {
  if (to.meta.requireAuth) { //判断该路由是否需要登录
    if (store.state.Token) { //vuex获取当前token是否存在
      next();
    } else {
      Message({
        showClose: true,
        message: '请先登录!',
        type: "warning"
      });
      next({
        path: '/login',
        query: { redirect: to.fullPath } //将跳转的路由path作为参数,登录成功后跳转该路由
      })
    }
  } else { //无需登录直接跳转页面
    next();
  }
})

在需要拦截的路由中添加:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM