我试图在我的defaultValue属性中添加多个值但没有成功。
<Select
value={this.state.selectedTests}
defaultValue={this.getDefaultValues(this.props.tests)}
isMulti onChange={(e) => this.handleChange(e)}
options={this.state.allTests}
className="basic-multi-select dropDownSelector"
/>
getDefaultValues()返回一个数组:
0:{value: "t1", label:"Test1"}
1:{value: "t2", label:"Test2"}
但Select元素没有显示标签......
其他人遇到同样的问题或知道如何解决这个问题?
谢谢您的帮助!
我解决了我的问题:)属性“value”中的值覆盖了属性“defaultValue”中的值。我删除属性“值”,它现在有效。
更改的代码:
<Select
defaultValue={this.getDefaultValues(this.props.tests)}
isMulti onChange={(e) => this.handleChange(e)}
options={this.state.allTests}
className="basic-multi-select dropDownSelector"
/>
您应该只在defaultValue prop中提供值。标签位于选项prop中。它将使用您在选项道具中提供的道具匹配正确的值。方法getDefaultValues()应该返回:
0: "t1",
1: "t2"