#reactjs #react-select
#reactjs #реагирование-выбор
Вопрос:
У меня проблема с react-select. При выборе опции во входных данных выбора мне нужно открыть модал.
После закрытия модального режима я не хочу, чтобы ввод был перефокусирован, фактический результат заключается в том, что ввод фокусируется после закрытия модального режима.
В этом примере я использую react-modal, но не в моем реальном проекте.
Пример кода :
https://codesandbox.io/s/eager-shannon-69n66?file=/src/App.js
Есть какой-нибудь способ это исправить?
Ответ №1:
Передайте ссылку на select
выпадающий список, используя useRef
хук react, и в вашем handleOnChange
методе используйте это reference
, чтобы закрыть выпадающий список. вызывая его функцию ref.current.blur()
;
Я изменил ваш код. https://codesandbox.io/s/winter-pine-jt1hv?file=/src/App.js
Комментарии:
1. Работает, но проблема в том, что в других случаях, когда я не использую модал, он не будет оставаться сфокусированным после изменения. Спасибо.
2. Хорошо, тогда вызывайте
ref.current.blur()
всякий раз, когда вы закрываете свой модал, а не вызывайте его при открытии модала.