Метки выбранного параметра в компоненте React-Select не исчезают после кнопки очистки фильтра, если isMulti = {true} - PullRequest
0 голосов
/ 23 апреля 2020

У меня проблема с компонентом React-select:

<Select
          value={this.props.typeSelection}
          onChange={this.handleChange.bind(this)}
          options={typeOptions}
          isClearable={true}
          isMulti={true}
        />

const typeOptions = [
  { value: 'Orange', label: 'Orange' },
  { value: 'Apple', label: 'Apple' },
];

private handleChange(value: any) {
    this.setState({ value: value });
  }

this.props.typeselection имеет тип:

export class Selection {
  value: string;
  label: string;

  constructor(
    value: string,
    label: string,
  ) {
    this.value = value;
    this.label = label;
  }
}

Рядом с компонентом Select у меня есть кнопка, которую я используйте для очистки полей формы.

private onClickResetButton() {
    this.setState({
      value: [{ value: '', label: '' }],
    });
  }

После нажатия на эту кнопку я вижу в консоли, что состояние «значение» этого компонента - это значение: [{value: '', label: ''}], поэтому он работает, но проблема в том, что метки, которые я выбираю в компонентах React-Select, не исчезают. Фактически, значение компонента после нажатия кнопки сброса является пустым массивом, но пользователь считает, что сброс не сработал, потому что все еще отображаются помеченные метки.

У вас есть идеи, как это исправить? ? Спасибо!

...