将 react-admin 文本输入的 "defaultValue" 和 "source" 映射到同一对象的两个不同属性
Map "defaultValue" and "source" of a react-admin text input to two different properties of the same object
我有一个奇怪的 API 端点,其中同一个字段有两个属性。
{
id:"123",
title: {
rendered: "Hi, i'm rendered",
raw: "<p> Hi, I'm the title</p>"
}
在编辑表单中,我有一个这样的组件:
<TextInput
source="title.raw"
defaultValue="title.rendered"
validation={{ text: true }}
validate={required()}
/>
但这不起作用。我怎样才能让 title.rendered 显示为默认值,但 title.raw 是发送回端点/服务器的内容?
试试这个:
import { FormDataConsumer } from 'react-admin'
<Edit ...>
...
<FormDataConsumer>
{({ formData, ...rest }) =>
<TextInput
source="title.raw"
defaultValue={formData.title.rendered}
validation={{ text: true }}
validate={required()}
/>
}
</FormDataConsumer>
</Edit>
我有一个奇怪的 API 端点,其中同一个字段有两个属性。
{
id:"123",
title: {
rendered: "Hi, i'm rendered",
raw: "<p> Hi, I'm the title</p>"
}
在编辑表单中,我有一个这样的组件:
<TextInput
source="title.raw"
defaultValue="title.rendered"
validation={{ text: true }}
validate={required()}
/>
但这不起作用。我怎样才能让 title.rendered 显示为默认值,但 title.raw 是发送回端点/服务器的内容?
试试这个:
import { FormDataConsumer } from 'react-admin'
<Edit ...>
...
<FormDataConsumer>
{({ formData, ...rest }) =>
<TextInput
source="title.raw"
defaultValue={formData.title.rendered}
validation={{ text: true }}
validate={required()}
/>
}
</FormDataConsumer>
</Edit>