Очистить множественный выбор (реагировать на выбор) - PullRequest
0 голосов
/ 07 декабря 2018

Я использую 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
                }
            })}
        />

1 Ответ

0 голосов
/ 10 декабря 2018

Вы используете неконтролируемый ввод.

Изменить

 <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, но не предоставили никакого значения.Я предлагаю вам реагировать управляемый против неконтролируемого

демо

...