在react-admin
中,我有一个输入
,其源是对象列表。
<CheckboxGroupInput source="binded_cameras" choices={choices}/>
binded_cameras
列表如下所示:
"binded_cameras": [
{
"id": 1,
"name": "Cam 1",
"url": "dummyurl.com"
},
{
"id": 4,
"name": "Cam 2",
"url": "dummyurl.com"
}
]
我试图仅获取要处理的id
列表。
我尝试了binded_cameras.id
,但当然它不起作用。
/>
如何操作此对象列表,并仅生成 id 列表?
最佳答案
由于React-admin使用react-final-form,你可以在保存和加载记录时使用parse()和format()函数来转换输入值,只需将它们作为props传递给Input,在此案例 CheckboxGroupInput:
两个函数的助记符:
parse():输入 -> 记录
format():记录->输入
<CheckboxGroupInput
source="binded_cameras"
choices={choices}
parse={ids => ids.map(id => ({id}))}
format={bindedCameras => bindedCameras.map(b => b.id)}
/>
https://marmelab.com/react-admin/Inputs.html#transforming-input-value-tofrom-record
关于javascript - React-Admin:如何处理对象列表上的输入源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61383769/