默认情况下,ChipField
仅可显示字段的内容,至少这是文档中所说明的。下面的示例显示字段name
的内容。
<ReferenceArrayField source="substances" reference="substances" label="Substanzen">
<SingleFieldList>
<ChipField source="name" />
</SingleFieldList>
</ReferenceArrayField>
但是,我希望ChipField
显示结合了多个字段信息的文本:
const Substanz = ({ record }) => {
return record.name+" ("+record.unit+")";
};
<ReferenceArrayField source="substances" reference="substances" label="Substanzen">
<SingleFieldList>
<ChipField source={<Substanz />} /> <---- this does not work!
</SingleFieldList>
</ReferenceArrayField>
但不幸的是,source
仅接受字段名称,而不接受OptionText
字段的SelectInput
属性之类的对象。
预期的这样做方式是什么?
我认为您的自定义SubstanzField
组件几乎就在那里。只需使用MUI
样式的组件即可制作自己的ChipField
外观组件并将其直接传递到SingleFieldList
不知道您是否期望使用更复杂的解决方案,但这对于您的情况应该足够简单和灵活。