首页 > 解决方案 > Vue SPA 中的角色和权限

问题描述

我有两个独立的项目。一个是用于 RESTful API 的 Laravel,另一个是 Vue SPA。

如果前端也由 Laravel 处理,那么处理角色和权限很容易,因为我们可以使用 Spatie Permission 提供的 can() 和 hasRole() 方法。

但是,我们不能直接从后端访问 Vue SPA 中的这个值。

有什么办法可以控制 Vue SPA 中的权限?

谢谢

标签: laravelvue.js

解决方案


是的,您可以在成功登录后向客户端发送用户的数据以及他的角色和权限,并创建一个名为 的 Vue 组件Can,例如,该组件仅在用户具有该角色或权限的情况下才会显示。

<can permission="post.delete">
  <v-btn>Delete record</v-btn>
<can>

Can 组件访问用户数据(包括他的角色和权限)并检查用户是否有能力查看底层内容。


推荐阅读