美文网首页vue.jsvue
vue路由权限的一些处理

vue路由权限的一些处理

作者: 五更月下琉璃 | 来源:发表于2020-10-10 10:47 被阅读0次

我这边遇到的大致分以下几种情况,
1需要登录后才能访问;
2登录用户分权限,根据角色id不同分配不同的菜单路由,比如分管理员和用户两种权限;管理员有更高的菜单权限
3禁止手动输入path进入页面

第一种情况的处理

登录成功后后台会返回一个token存入vuex,当token过期或者没有token时在页面请求接口会返回401状态码,在request封装文件获取到后执行登出并进入登录界面。

request.interceptors.response.use(
  response => {
    // 错误统一拦截
    if (parseInt(response.data.status) === 401) {
      store.commit(LOGIN_OUT)
      new Vue().$Message.error({
        content: '登录已过期,请重新登录',
        onClose: () => {
          Router.push({
            name: 'index'
          })
        }
      })
      return Promise.reject(response.data.msg)
    }
    return response
  },
  error => {
    return Promise.reject(error)
  }
)

第二种情况的处理

有多种处理方法,我这边是分配菜单权限,登录接口给到的不同角色不同的菜单,并渲染到界面。菜单格式大致如下

menus: [
        {
          name: "dataAnalysis",
          title: "数据统计",
          icon: "md-school",
          id: "0",
          submenu: [
            {
              name: "schoolData",
              title: "学校数据",
              icon: "",
              id: "0",
              path: "/home/analysis/school",
            },
          ],
        },
]

对于一些重要的界面,要做权限处理,比如只有管理员可以进入的,防止用户手动输入路由进入界面

  beforeRouteEnter(to, from, next) {
    let roleId = store.state.user.user.role_id  //从我存入store的数据中获取当前用户的角色id
    if (roleId != 1) {  //用户不是管理员,则进入404页面
      next({
        path: "/404",
      }); //跳到404页面
    }else {
      next(); //放行
    }
  },

相关文章

  • vue 使用addRoutes动态添加路由 刷新页面跳转404路

    在做vue项目时需要使用后端给的路由权限,处理路由动态添加到路由上,几经查找在 vue-Router中有个rou...

  • vue基于d2-admin的RBAC权限管理解决方案2019-0

    前两篇关于vue权限路由文章的填坑,说了一堆理论,是时候操作一波了。 vue权限路由实现方式总结 vue权限路由实...

  • vue路由权限的一些处理

    我这边遇到的大致分以下几种情况,1需要登录后才能访问;2登录用户分权限,根据角色id不同分配不同的菜单路由,比如分...

  • vue-router 路由权限控制

    vue项目开发中经常需要对路由进行权限控制,比如只有登录才能访问某个路由这里分享一个简单是路由登录权限设置 废话不...

  • vue后端获取路由遇到的一些坑

    vue动态路由是指从后端拿到路由的配置信息,由前端加载,这样一些没有权限的页面组件信息拿不到,也就不会加载了,相比...

  • Vue实现动态路由

    通常我们在vue项目中都是前端配置好路由的,但在一些项目中我们可能会遇到权限控制,这样我们就涉及到动态路由的设置了...

  • vue路由权限及刷新当前页面跳转404的问题

    vue实现权限路由: 首先路由要分为两部分,一部分为所有人可见,一部分为根据权限动态挂载。 路由具体内容这里就不过...

  • vue 完善路由权限

    什么是钩子函数? 主要是给使用者在路由发生变化时进行一些特殊的处理而定义的函数。 为什么要使用路由的钩子函数? 在...

  • VUE路由判断权限

    可以通过路由去判断是否有权限访问相应页面 使用router.beforeEach,在跳转路由前添加判断

  • vue实现权限路由

    1234234

网友评论

    本文标题:vue路由权限的一些处理

    本文链接:https://www.haomeiwen.com/subject/oapdpktx.html