我有一个简单的React组件,它获得了初始状态:

this.state = {
  currentObject: {
    isYounger: false
  }
}

然后,我使用默认值react-select渲染this.state.currentObject.isYounger:
    <Select
      name={"age"}
      value={this.state.currentObject.isYounger}
      onChange={newValue => this.addIsYoungerValue(newValue)}
      options={isYoungerOptions}
    />

由于某些原因,未设置该值。为什么是这样?

Codesandbox

版本:
"react-select": "^2.4.2",

最佳答案

这里的问题不在于状态选择,实际的问题是标签没有被显示。

因此,根据您的addIsYoungerValue函数,您将this.state.currentObject.isYounger的值设置为整个对象。即{ value: true, label: "Younger" }。因此,可以通过以下更改初始状态的值来解决该问题。

this.state = {
      array: [],
      currentObject: {
        isYounger: { value: true, label: "Younger" }
      }
    };

和hurrey,将显示默认值标签。

关于javascript - 设置默认值时react-select不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55460443/

10-11 14:17