我使用https://github.com/JedWatson/react-select .
我的组件示例:
选定选项:[]
在第一个加载组件中,多选为空。当我选择一些值时,我会将值写入selectedOptions。在这种情况下它可以正常工作。
但是当我清除selectedOptions时, View 不会更新。
有例子 https://codesandbox.io/s/xovn7n2lz4
<Select
defaultValue={selectedOptions}
isMulti={isMulti}
onChange={onChange}
options={options}
placeholder={placeholder}
styles={colourStyles}
theme={(theme) => ({
...theme,
position: 'static',
borderRadius: 0,
colors: {
...theme.colors,
primary25: darkTheme.colors.hoverColor,
primary: darkTheme.colors.hoverColor,
neutral0: normalElemColor,
neutral80: standardFontColor,
},
spacing: {
...theme.spacing,
controlHeight: 24,
baseUnit: 1
}
})}
/>
最佳答案
您正在使用不受控制的输入。
改变
<Select isMulti
defaultValue={selectedOptions}
onChange={this.onInputChange}
name="color"
options={colourOptions}
/>
至
<Select
isMulti
defaultValue={selectedOptions}
value={selectedOptions}
onChange={this.onInputChange}
name="color"
options={colourOptions}
/>
您已定义 onchange 但未提供任何值。 我建议你 react controlled vs uncontrolled
关于reactjs - 清除多选( react 选择),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53666417/