vue 路由权限

Posted lwj820876312

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue 路由权限相关的知识,希望对你有一定的参考价值。

import Vue from ‘vue‘
import Router from ‘vue-router‘
import HelloWorld from ‘@/components/HelloWorld‘
import login from ‘@/components/login‘
import register from ‘@/components/register‘
Vue.use(Router)

const router = new Router({
 mode: ‘history‘,
 routes: [{
   path: ‘/‘,
   name: ‘home‘,
   component: HelloWorld,
   meta: {
    requiresAuth: true
   }
  },
  {
   path: ‘/HelloWorld‘,
   name: ‘HelloWorld‘,
   component: HelloWorld,
  },
  {
   path: ‘/login‘,
   name: ‘login‘,
   component: login,
  },
  {
   path: ‘/register‘,
   name: ‘register‘,
   component: register,
  },
 ]
});

//注册全局钩子用来拦截导航
router.beforeEach((to, from, next) => {
 //获取store里面的token
 let token = store.state.token;
 //判断要去的路由有没有requiresAuth
 if (to.meta.requiresAuth) {
  if (token) {
   next();
  } else {
   next({
    path: ‘/login‘,
    query: { redirect: to.fullPath } // 将刚刚要去的路由path作为参数,方便登录成功后直接跳转到该路由
   });
  }
 } else {
  next(); 
 }
});
export default router;

以上是关于vue 路由权限的主要内容,如果未能解决你的问题,请参考以下文章

vue 项目路由权限管理实现

vue项目路由权限控制实现(前端控制)

Vue路由权限

Vue路由权限

vue项目权限管理

如何在vue中实现路由跳转判断用户权限功能