VUE设置控制守卫,未登录时自动跳转到登录页,登录后正常访问
更新:HHH   时间:2023-1-7


index.js中设置如下内容:


const router = new Router({

  routes: [

    {

      path: '/',

      name: 'HelloWorld',

      component: HelloWorld,

      meta:{requireAuth:true}

    },

    {

      path: '/login',

      name: 'login',

      component: Login

    },

    {

      path: '/index',

      name: 'index',

      component: index,

      meta:{requireAuth:true}

    },

  ]

});


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

 //requireAuth对应上面每个跳转的 meta:{requireAuth:true},

 //配置上说明访问该路径时需要检测是否登录状态

 if(to.meta.requireAuth) {

   //sessionStorage可直接使用,无需引入

   //在登录页,点击登录按钮后设置sessionStorage.setItem("key","value")

   //通过sessionStorage.getItem("account")获取,如果有值则是登录状态,无值则为未登录,自动跳转到登录页

   if(sessionStorage.getItem("account") == null) {  

      next('/login');      

   }else{     

     next();

    }

 }

 else{

    next();

 }

});



export default router;


返回开发技术教程...