如何在编辑表单中预填充 ImageInput 中的 ImageField,或采取正确的方法
How to pre populate the ImageField inside ImageInput in Edit Form, or the right approach to take
我正在使用 react-admin 和功能。我需要在 ImageField 中显示原始图片,但是如果我选择拖放新图片,那么我需要用新图片更新 ImageField .我似乎看不到任何与图像相关的编辑功能似乎很常见的用例的示例。
<ImageInput source="src" label="Product Image" accept="image/*" >
<ImageField source="imageUrl"/>
</ImageInput>
好像和这个差不多
question
但显然我是新手,在使用了一些该死的东西之后,我离开始它还差得很远……我猜想的行为是因为 imageUrl 确实存在于表单上,当表单打开时,上面的 ImageField 已经填充了现有图片,但这不是因为它在 .. 如果有人能指出我正确的方向,那将是一个很大的帮助
我是这样做的:
<ImageInput source="src" label="Billede" accept="image/*" mulitple={false}>
<ImageField source="thumbnail" title="title" />
</ImageInput>
<FormDataConsumer>
{({formData, dispatch, ...rest}) => {
if (!formData.src) {
return (
<div>
<Labeled label="Original image">
<ImageField source="thumbnail" {...rest}/>
</Labeled>
</div>
);
}
}}
</FormDataConsumer>
这将显示原始图像,只要没有选择新图像。
选择新图像时,将显示该图像,隐藏原始图像。
我正在使用 react-admin 和功能。我需要在 ImageField 中显示原始图片,但是如果我选择拖放新图片,那么我需要用新图片更新 ImageField .我似乎看不到任何与图像相关的编辑功能似乎很常见的用例的示例。
<ImageInput source="src" label="Product Image" accept="image/*" >
<ImageField source="imageUrl"/>
</ImageInput>
好像和这个差不多 question
但显然我是新手,在使用了一些该死的东西之后,我离开始它还差得很远……我猜想的行为是因为 imageUrl 确实存在于表单上,当表单打开时,上面的 ImageField 已经填充了现有图片,但这不是因为它在 .. 如果有人能指出我正确的方向,那将是一个很大的帮助
我是这样做的:
<ImageInput source="src" label="Billede" accept="image/*" mulitple={false}>
<ImageField source="thumbnail" title="title" />
</ImageInput>
<FormDataConsumer>
{({formData, dispatch, ...rest}) => {
if (!formData.src) {
return (
<div>
<Labeled label="Original image">
<ImageField source="thumbnail" {...rest}/>
</Labeled>
</div>
);
}
}}
</FormDataConsumer>
这将显示原始图像,只要没有选择新图像。 选择新图像时,将显示该图像,隐藏原始图像。