清除多选(反应选择)

Luk*_*nii 5 reactjs react-select

我使用https://github.com/JedWatson/react-select。

我的组件示例:
selectedOptions : [] 在第一个加载组件中,多选为空。当我选择一些值时,我将值写入selectedOptions。在这种情况下,它可以正常工作。但是当我清除selectedOptions视图时不会更新。

有示例 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
                }
            })}
        />
Run Code Online (Sandbox Code Playgroud)

Jus*_*ode 7

您正在使用不受控制的输入。

改变

 <Select isMulti
          defaultValue={selectedOptions}         
          onChange={this.onInputChange}
          name="color"
          options={colourOptions}
        />
Run Code Online (Sandbox Code Playgroud)

到

<Select
          isMulti
          defaultValue={selectedOptions}
          value={selectedOptions}
          onChange={this.onInputChange}
          name="color"
          options={colourOptions}
        />
Run Code Online (Sandbox Code Playgroud)

您已定义 onchange 但未提供任何值。我建议你做出受控与不受控制的反应

演示