仅当用户是管理员时才希望在页面顶部显示自定义按钮。这适用于在同一页面上显示/隐藏某些字段。但由于某种原因,我无法让它在列表操作中工作。
代码:
const UserListActions = ({ permissions, ...props }) => (
<CardActions> .
<RefreshButton />
{permissions === 'admin' &&
<Button color="primary"> .
<SyncIcon /> Sync Users .
</Button> .
} .
</CardActions> .
);
export const UserList = ({ permissions, ...props }) => (
<List actions={<UserListActions />} title="All users" {...props} bulkActions={false}>
最佳答案
明白了这一点。我缺少将权限传递到列表的 actions 属性中的关键部分
const RoleListActions = ({ basePath, permissions }) => (
<CardActions>
{permissions === 'admin' && <SyncAwsRolesButton color="primary" />}
{permissions === 'admin' && <CreateButton basePath={basePath} />}
<RefreshButton />
</CardActions>
);
export const RoleList = ({ permissions, ...props }) => (
<List title="All roles" actions={<RoleListActions permissions={permissions} />} {...props} bulkActions={false}>
^^ This bit right here
关于react-admin - 无法获得在列表操作中工作的 react 管理权限检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51442519/