【发布时间】:2023-03-13 07:20:02
【问题描述】:
我正在使用redux-form,并且有一个使用react-select 的自定义组件。
我创建了具有预填充选项的下拉菜单,并且还允许自定义输入到该下拉框中。我正在使用 react-select 中的“creatable”组件。
我希望能够在首次加载时将其中一个选项作为默认值,该选项也会在下拉列表中突出显示为选中状态。我已经实现了这一点,但唯一的问题是,如果我选择一个新值或创建一个新值,它将保持为默认值 - 尽管 json 确实更改为正确的值。
这是我的代码框示例 - https://codesandbox.io/s/jvzko04ok3
在我的示例中,您将看到 Jim 默认被选中,但是一旦您将选择选项更改为其他值,json 值就会更改,但视图不会更改。感觉它是 onBlur 或 onChange 问题。
多年来,react-select 文档的版本发生了变化,可以使用 value 或 defaultValue 指定默认值。
<CreatableSelect
{...props}
options={props.options}
onChange={value => input.onChange(value)}
onBlur={() => input.onBlur(input.value)}
value={props.options[1]}
/>
【问题讨论】:
标签: javascript reactjs redux-form react-select