【问题标题】:how to give permission accessing a routes according to custom permission in vue.js?如何根据 vue.js 中的自定义权限授予访问路由的权限?
【发布时间】:2020-04-04 09:03:25
【问题描述】:

我有五个班级。例如第 1 类到第 5 类。管理员从 Admin Dashboard 将学生分配到不同的班级。我想要的是,如果学生无权访问特定班级,学生将无法访问班级组件。

【问题讨论】:

    标签: laravel-5 vuejs2


    【解决方案1】:

    在 vue js 中,最简单的方法是在路由上使用 meta 标签:

    {
       path: "/only-students-from-class-a",
       meta: {studentClass: 'a'}
    }
    

    然后在让用户真正看到页面之前,使用全局路由器保护检查当前用户是否属于存储在元数据中的类。

    router.beforeEach((to, from, next) => {
      const userClass = store.state.user.studentClass;
      if (to.meta.studentClass && userClass !== to.meta.studentClass) 
          next('/login')
      else next()
    })
    

    您也可以根据路线执行此操作:

    {
          path: '/foo',
          component: Foo,
          beforeEnter: (to, from, next) => {
           const studentClass = store.state.user.studentClass;
           if(studentClass !== 'class5') next('/login')
           else next();
          }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-15
      • 2018-12-20
      • 1970-01-01
      • 1970-01-01
      • 2022-10-15
      • 2012-01-19
      • 2017-04-07
      • 1970-01-01
      相关资源
      最近更新 更多