Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: На мобильных устройствах не работает скролл выпадающего списка компонента CustomSelect (React v18.2.0) #5540

Closed
Ascurse opened this issue Jul 30, 2023 · 5 comments · May be fixed by #6759

Comments

@Ascurse
Copy link

Ascurse commented Jul 30, 2023

Описание

На мобильных устройствах в компоненте CustomSelect библиотеки VKUI наблюдается неработоспособность прокрутки выпадающего списка с помощью touch ивентов. При попытке прокрутить список пальцем вниз или вверх, ничего не происходит, и пользователь не может выбрать элементы, которые не видны на экране.
В данный момент компонент используем внутри модального окна.

Одним из предложенных решений для этой проблемы было использование компонента Select вместо CustomSelect, который переключает между NativeSelect и CustomSelect в зависимости от ширины экрана. Однако NativeSelect не обладает свойством "searchable", что является крайне важным функционалом.

Версия

v5.6.2

В каких браузерах воспроизводится проблема?

Chrome, Safari

Шаги воспроизведения

  1. Откройте веб-приложение, содержащее компонент CustomSelect, на мобильном устройстве.
  2. Откройте выпадающий список CustomSelect, который содержит большое количество элементов, так что список выходит за пределы экрана устройства.
  3. Попробуйте прокрутить список пальцем вниз или вверх.

На мобильных устройствах прокрутка выпадающего списка CustomSelect не работает с помощью touch ивентов. Пользователь не может выбрать элементы, которые не видны на экране, так как список остаётся неподвижным.

Ожидаемое поведение

При прокрутке пальцем вниз или вверх по выпадающему списку CustomSelect, список должен плавно прокручиваться, позволяя пользователю выбрать элементы, которые не видны на экране.

Скриншоты

No response

Пример с воспроизведением

No response

@eugpoloz
Copy link
Contributor

@Ascurse привет! Точно v4.6.2, а не v5.6.2?

@Ascurse
Copy link
Author

Ascurse commented Jul 31, 2023

@eugpoloz Пардон, v5.6.2

@Ascurse
Copy link
Author

Ascurse commented Aug 7, 2023

Дополнение: скролл выпадающего списка на мобильных устройствах в компоненте СustomSelect не работает ТОЛЬКО когда компонент находится внутри модального окна ModalRoot -> ModalPage
Если подключить компонент на обычную страницу все работает как ожидалось

@inomdzhon inomdzhon added this to VKUI Aug 8, 2023
@github-project-automation github-project-automation bot moved this to 🗃 Backlog in VKUI Aug 8, 2023
@inomdzhon
Copy link
Contributor

CustomSelect стоит использовать для десктоп, а для мобилок NativeSelect. У нас есть компонент Select, который переключает эти два компонента в зависимости от того, есть ли указатель мыши или нет.

Вот тут писал почему #4844 (comment)

@inomdzhon inomdzhon closed this as not planned Won't fix, can't repro, duplicate, stale Aug 8, 2023
@github-project-automation github-project-automation bot moved this from 🗃 Backlog to ✅ Done in VKUI Aug 8, 2023
@inomdzhon inomdzhon self-assigned this Aug 8, 2023
@Ascurse
Copy link
Author

Ascurse commented Aug 16, 2023

@inomdzhon да, читал про это решение, но она к сожалению не совсем подходит когда нужен селект с возможностью поиска (searchable)
B опять же повторюсь - проблема присутствует только когда СustomSelect находится внутри модального окна

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants