字节码学院|导航守卫的简单配置(vue)
更新:HHH   时间:2023-1-7


router.beforeEach((to, from, next) => {
  if (to.meta.requireAuth) {
    let user = Storage.get('user');
    // Storage.get('JSESSIONID');

    // 测试人员录入基本资料后,需要服务端向前端返回一个标记,用来判断是否可以进入题库
    let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)
    let submited = Storage.get("submit")
    if (flag && to.path == "/paper" && from.path == "/") {
      if (submited) {
        next()
      } else {
        next({path: '/nopower'});
      }
      return;
    }

    if (!user) {
      next({path: '/login'});
    } else {
      next();
    }

    // if (storage.get('platformUser')) {
    //   store.dispatch('loginUser', JSON.parse(storage.get('platformUser')));    //将用户信息存储到vuex中,供全局使用
    //   next();
    // } else {
    //   store.dispatch('initLoginModal', {state: true});     //显示登录弹窗
    //   next();
    // }
  } else {
    next();
  }
});
返回web开发教程...