在react-admin中,我有一个Show Show,其中包含一个正常运行的DataGrid表,其中包含一些通过react-admin Fields呈现的基本信息。
例如:
return (
<Show {...props}>
<GridLayout>
<ResourceGrid item ifPresent='propTitle'>
<TextField source='status' />
</ResourceGrid>
</GridLayout>
</Show>
);
根据它们是否存在于传递到该ResourceGrid的记录中(在本例中为propTitle),我需要渲染一些其他TextField。我试过使用这样的容器:
const Container = (props) => {
return props.record.conditional ? (
<Fragment>
<TextField record={props.record} label='A' source='conditional' />
<TextField record={props.record} label='B' source='otherConditional' />
</Fragment>
) : null;
}
...
...
<ResourceGrid item ifPresent='propTitle'>
<TextField source='status' />
<Container />
</ResourceGrid>
但这似乎不起作用。即使我将status
作为Conditional
的源传递,内容也会呈现,但标签不会呈现。
我无法在react-admin中找到有关条件渲染的任何有用资源,而我所做的很少是关于使用一些外部值,而不是prop本身的值。