onBlur сбрасывает значение в реагировать-выберите - PullRequest
0 голосов
/ 02 ноября 2018

У меня проблема с реагировать на выбор. Когда я набираю текст в поисковом вводе и нажимаю снаружи, мой текст исчезает. Я попытался onBlur={() => input.onBlur({value: input.value})}, и он работает нормально, но у меня в консоли появляются ужасные ошибки. Что-то вроде Uncaught ReferenceError: input is not defined.

onChangeValue = (newValue) => {
  const inputValue = newValue.replace(/\W/g, '');
  this.setState({ inputValue });
  this.props.nameFilter(inputValue);
};

handleCloseMenu = () => {
  this.setState(({
    menuIsOpen: false,
  }))
  input.onBlur(input.value)
};

handleOpenMenu = () => {
  this.setState(({
    menuIsOpen: true,
  }))
  input.onBlur(input.value)
};

render() {
  return (
   <div className="container">
    <AsyncSelect 
      className="search-input"
      onFocus={this.handleOpenMenu}
      onBlur={this.handleCloseMenu}
      menuIsOpen={this.state.menuIsOpen}
      loadOptions={this.loadOptions}
      defaultOptions
      onInputChange={this.onChangeValue}
      placeholder="Search..."
    />
  </div>    
  )};
};

Есть ли обходной путь без использования приставки-формы?

Та же проблема, что и здесь , но я не использую избыточную форму, и эти решения не работают.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...