Фокус React-Select исчезает при открытии меню

Я использую контролируемый элемент Select из React-Select внутри формы. Всякий раз, когда я пытаюсь открыть меню Select, фокус переходит на первый ввод на странице. Я не могу понять, почему.

Вот мой компонент:

import Select from "react-select">

export default function SelectOption({
  name,
  value,
  placeholder,
  options,
  labels,
  disabled_options,
  onChange,
  loading,
  defaultValue,
  filter,
  onBlur,
  inner_ref,
}: Props) {
  const using_options = useMemo(
    () => options.map((value, i) => ({ value, label: labels[i] })),
    [options]
  );

  if (loading) return <LoadingMarker />;

  return (
    <Select
      name = {name}
      menuPortalTarget = {document.body}
      styles = {{ menuPortal: (base) => ({ ...base, zIndex: 9999 }) }}
      options = {using_options}
      defaultValue = {using_options.find((op) => op.value === defaultValue)}
      isSearchable = {filter}
      isClearable = {true}
      filterOption = {(option, input) => option.label.includes(input)}
      isOptionDisabled = {(option) =>
        !!disabled_options && disabled_options.includes(option.value)
      }
      placeholder = {placeholder}
      value = {using_options.find((op) => op.value == value)}
      onChange = {(option) => onChange && onChange(option ? option.value : null)}
      onBlur = {onBlur}
      ref = {inner_ref}
    />
  );
}

Я пробовал это на нескольких разных страницах, некоторые с Select, управляемым через контроллер useForm, а некоторые через обычный useState. Я попытался установить значение на постоянное значение. Я попробовал убрать все реквизиты, но options. Он исправляется только тогда, когда находится не внутри формы.

Не могли бы вы мне помочь? я в тупике

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
62
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я нашел проблему. По какой-то безбожной причине всякий раз, когда я нажимал на элемент выбора, он регистрировался как щелчок по форме, поэтому фокус перемещался на первый ввод в форме. Чтобы исправить это, добавьте следующее в div, обертывающий выделение, или в саму форму:

   <div onClick = {(e) => e.preventDefault()}>
       <Select
        ...
        />
   </div>
    

Другие вопросы по теме

Управляемый компонент React Hook Form. Два входа как одно значение
Как установить все мои параметры как выбранные по умолчанию, и все значения параметров должны отображаться в поле при выборе реакции при множественном выборе
Как реализовать опцию, которая инвертирует весь выбор в реакции-выборе?
Как создать адаптивный стиль реагирования-выбора
Получение массива значений с множественным выбором из реакции-выбора в методе действия маршрутизатора 6
Установите раскрывающийся список React Select как обязательный в форме
Как привязать значение массива из API к значению параметра компонента «реагировать-выбрать» в реакции js
Реагировать на выбор не обновляется правильно после обновления другого связанного поля выбора
Реагировать на выбор управления
Возврат к реквизитам по умолчанию для реакции на выбор на основе условия в React-Select

Похожие вопросы

Глубокий ключ вложенного объекта в машинописном тексте
Nextjs useSearchParams не обновляется правильно
Main.js содержит html при развертывании, что приводит к пустой странице
Как визуализировать JSX, возвращаемый асинхронной функцией, вызванной изнутри Array.Map() в React?
Реакция: сброс группы переключателей пользовательского интерфейса материала в форме Formik не работает
Как создать универсальный крючок для извлечения данных в TypeScript для API с различными структурами ответов?
Можно ли надежно буферизовать исходящие POST-запросы из автономного React PWA?
Обертка с помощью React.StrictMode в Next.js
Как я могу создать переводчик, который конвертирует язык моего динамического сайта с английского на французский?
Использование NPM для создания приложения React: СЕРЬЕЗНОЕ ИЗМЕНЕНИЕ: webpack <5 используется для включения полифилов для основных модулей node.js по умолчанию. Это уже не так