Reactjs React admin:在React.component中无法访问权限
我正在使用react admin,并加入了高级教程“从列表页创建和编辑记录”。本教程使用react.component代替常量。现在,我需要根据授权传递的权限对象中的值显示字段。我可以在常量和管理组件中做得很好,但是如果我尝试在react.component中访问它,权限总是空的Reactjs React admin:在React.component中无法访问权限,reactjs,authorization,react-admin,Reactjs,Authorization,React Admin,我正在使用react admin,并加入了高级教程“从列表页创建和编辑记录”。本教程使用react.component代替常量。现在,我需要根据授权传递的权限对象中的值显示字段。我可以在常量和管理组件中做得很好,但是如果我尝试在react.component中访问它,权限总是空的 class InviteCodeList extends React.Component { render() { const { permissions,push, classes, ...p
class InviteCodeList extends React.Component {
render() {
const { permissions,push, classes, ...props } = this.props;
console.log('permissions');
console.log(permissions);
return (
<Fragment>
<List
{...props}
filters={<CustomFilter />}
actions={<CustomActions />}
sort={{ field: 'title', order: 'ASC' }}
>
<Datagrid>
<TextField source="id" />
<TextField source="title" />
<WithPermissions
render={({ permissions }) => (
permissions.find(f => f.resource === 'admin') !== undefined
? <TextField source="invite_code" />
: null
)}
/>
<ReferenceField source="price_list_id" reference="pricelists">
<TextField source="price_list_name" />
</ReferenceField>
<TextField source="effective_dt" />
<DateField source="expiration_dt" />
<EditButton />
</Datagrid>
</List>
类InviteCodeList扩展了React.Component{
render(){
const{permissions,push,classes,…props}=this.props;
log(“权限”);
console.log(权限);
返回(
(
权限.查找(f=>f.resource==='admin')!==未定义
?
:null
)}
/>
这是新的代码段。我没有检查在API调用返回实际数据之前返回的null
权限!==null?权限。查找(f=>f.resource===admin')!==未定义
?
:null:null
您不应该在此处使用带权限的组件。您可以设置一个显示问题的codesandbox吗?您是对的,我不需要WithPemissions。问题是,由于身份验证调用是异步的,因此在实际API调用返回之前,它会返回null作为权限。我添加了null检查,并且它作为expec特德现在。