vue 3.0 项目搭建移动端 (三) 全局路由拦截 vue-router beforeEach

最原始没有任何干扰的路由拦截         其他资料   

import Vue from 'vue';
import Router from 'vue-router';
import home from './home';

Vue.use(Router);

const RouterModel = new Router({
    routes: [...home]
});
// router.beforeEach
RouterModel.beforeEach((to, from, next) => {
  next();
});



export default RouterModel;

 有条件的路由判断

router.beforeEach(function (to,from,next) {
  //console.log(to,from,next)
  //需求登录判断
  if(to.meta.auth){
      /*不为空*/
      if(sessionStorage.getItem('user')){
          next();
      }else{
          next('/login?redirect='+to.fullPath)
          //这里与上面的相对应,此处也可以写成
        /***  next({
             path: '/login',
              query: { redirect: to.fullPath }
          })***/
          //上面为另外一种写法
      }
  }
  else{
      next();
  }
})

猜你喜欢

转载自www.cnblogs.com/dianzan/p/12371712.html