我有这段代码用于处理模型中的状态更改。
<Form.Item
name="status"
label="Status"
>
<Select>
{
statusOptions
?
Object.keys(statusOptions).map(statusId => {
return <Select.Option key={ statusId } value={ statusId }>{ statusKey2Value(statusId) }</Select.Option>;
})
:
null
}
</Select>
</Form.Item>
statusOptions是一个JSON对象,如下所示:
{
0: Deleted
1: Active
}
我使用的是Antd V4.5.1,它建议直接在表单组件中处理initialValues。 我基本上是从后端检索数据,并将数据提供给表单组件。 但是,当我尝试为下拉列表设置selected option时,它显示为“1”而不是“Active”。 我已经找到了一个由Antd Select API提供的解决方案,它将状态值作为一个对象保存,其中包含一个标签值,但是我并不认为改变我的后端结构是最优的。 有人能帮我一下吗?
尝试在select
组件上使用optionlabelprop=“label”
,并在select.option
上放置label={statusoptions[statusId]}
。 Oh并使Select.Option
自动关闭。