代码之家  ›  专栏  ›  技术社区  ›  Donghua Liu

如何根据用户对react admin的权限对资源和CRUD操作进行编程配置

  •  0
  • Donghua Liu  · 技术社区  · 7 年前

    我使用的是React Admin,它非常快速和高效。但是,我希望根据日志用户的属性实现一些功能,如编程显示资源和CRUD操作组件。

    像这样。

    const App = () => (
        <Admin restClient={jsonServerRestClient('http://jsonplaceholder.typicode.com')}>
            <Resource name="users" list={UserList} haveListPermission={user.hasUsersListPermission}/>
            <Resource name="tags" havePermission={user.hasTagPermission} />
        </Admin>
    );
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Gildas Garcia    7 年前

    记录如下: https://marmelab.com/react-admin/Authorization.html

    简而言之, Admin 组件接受一个作为子级的函数(think render prop),该函数将使用您的权限(从 authProvider )所以假设你在使用 react-admin (而不是 admin-on-rest )还有你的 身份验证提供程序 使用类型调用时与当前用户解析 AUTH_GET_PERMISSIONS :

    const App = () => (
        <Admin authProvider={authProvider} dataProvider={jsonServerRestClient('http://jsonplaceholder.typicode.com')}>
            {user => (
                {user.hasUsersListPermission && <Resource name="users" list={UserList} />}
                {user.hasTagPermission && <Resource name="tags" />
            )}
        )}
        </Admin>
    );
    
    推荐文章