小编Jer*_*emy的帖子

如何在 Nuxtjs 中创建用于检查角色的中间件

我正在尝试创建一个中间件来检查我的用户的角色。

// middleware/is-admin.js
export default function (context) {
  let user = context.store.getters['auth/user']

  if ( user.role !== 'admin' ) {
    return context.redirect('/errors/403')
  }
}
Run Code Online (Sandbox Code Playgroud)

在我的.vue文件中,我把这个放在:

middleware: [ 'is-admin' ]
Run Code Online (Sandbox Code Playgroud)

有用。

现在,我想检查用户是否还有另一个角色。所以,我创建了一个新的中间件:

// middleware/is-consultant.js
export default function (context) {
  let user = context.store.getters['auth/user']

  if ( user.role !== 'consultant' ) {
    return context.redirect('/errors/403')
  }
}
Run Code Online (Sandbox Code Playgroud)

在我的.vue文件中:

middleware: [ 'is-admin', 'is-consultant' ]
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我这样做时,如果我以管理员角色访问该路由,它将不再起作用。

你能告诉我如何创建一个使用 Nuxt.js 检查多个角色的中间件吗?

谢谢!

javascript vue.js nuxt.js

4
推荐指数
2
解决办法
7680
查看次数

标签 统计

javascript ×1

nuxt.js ×1

vue.js ×1