React-Admin:如何使用 Datagrid <row> 隐藏 "Checkbox"?
React-Admin: How do I hide the "Checkbox" with the Datagrid <row>?
在我的 App
中,我们有 permissions
喜欢 ADD/DELETE
基于角色。
Admin
拥有 add
、delete
、edit
和 records
的所有权限
customers
没有 delete
权限。
因此我想为客户隐藏 <Datagrid>
delete
复选框。
//RoleList.js
import React from "react";
import { List, Datagrid, TextField, SingleFieldList, ChipField, EditButton, DeleteButton, ReferenceArrayField, Loading } from "react-admin";
import { makeStyles } from "@material-ui/core/styles";
const useStyles = makeStyles(theme => ({
chips: {
backgroundColor: theme.palette.secondary.light
}
}));
const RoleList = ({ permissions, ...props }) => {
const classes = useStyles();
if (!permissions) return <Loading />;
const permissionsList = permissions.split(",");
return (
<List {...props} title="roles">
<Datagrid rowClick="show">
<TextField source="name" />
<ReferenceArrayField reference="permissions" source="permissions">
<SingleFieldList>
<ChipField source="name" className={classes.chips} />
</SingleFieldList>
</ReferenceArrayField>
{permissionsList.includes("edit_roles") && <EditButton />}
{permissionsList.includes("delete_roles") && <DeleteButton />}
</Datagrid>
</List>
);
};
export default RoleList;
这是我的组件,我在其中隐藏了基于 permissions
的 edit
和 delete
按钮,但 复选框 仍然有效。
我是否遗漏了 react-admin
中的任何内容?
隐藏复选框:
<List
{...props}
bulkActionButtons={false}
>
...
</List>
在我的 App
中,我们有 permissions
喜欢 ADD/DELETE
基于角色。
Admin
拥有add
、delete
、edit
和records
的所有权限
customers
没有delete
权限。
因此我想为客户隐藏 <Datagrid>
delete
复选框。
//RoleList.js
import React from "react";
import { List, Datagrid, TextField, SingleFieldList, ChipField, EditButton, DeleteButton, ReferenceArrayField, Loading } from "react-admin";
import { makeStyles } from "@material-ui/core/styles";
const useStyles = makeStyles(theme => ({
chips: {
backgroundColor: theme.palette.secondary.light
}
}));
const RoleList = ({ permissions, ...props }) => {
const classes = useStyles();
if (!permissions) return <Loading />;
const permissionsList = permissions.split(",");
return (
<List {...props} title="roles">
<Datagrid rowClick="show">
<TextField source="name" />
<ReferenceArrayField reference="permissions" source="permissions">
<SingleFieldList>
<ChipField source="name" className={classes.chips} />
</SingleFieldList>
</ReferenceArrayField>
{permissionsList.includes("edit_roles") && <EditButton />}
{permissionsList.includes("delete_roles") && <DeleteButton />}
</Datagrid>
</List>
);
};
export default RoleList;
这是我的组件,我在其中隐藏了基于 permissions
的 edit
和 delete
按钮,但 复选框 仍然有效。
我是否遗漏了 react-admin
中的任何内容?
隐藏复选框:
<List
{...props}
bulkActionButtons={false}
>
...
</List>