Skip to content

standbyoneself/vk-test-dropdown

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание от «‎ВКонтакте»

Представляет собой функционал создания UI Dropdown. HTML, CSS, JavaScript. 0 зависимостей, 9 полифиллов.

Демо: https://vk-test-dropdown.vercel.app

Требования (Тим Чаптыков):

Реализовать UI дропдаун, который в зависимости от параметров инициализации позволяет: — выбирать только один пункт из списка; — выбирать несколько пунктов из списка (multiselect); – использовать autocomplete для фильтрации пунктов списка по набранному префиксу (при этом фильтрация должна учитывать все варианты неправильной раскладки, т.е. Андрей Рогозов должен подсказываться по любой из четырех подстрок "рого", "hjuj", "rogo", кщпщ''); – выполнять запрос на сервер для расширенного поиска в режиме реального времени (например, хотим искать не только по именам пользователя, но и по домену, при этом имена и фамилии есть в дропдауне на клиенте, а домен лежит только на сервере); – отображать или нет аватарки пользователей в списке.

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

Требования к реализации: javascript, желательно без зависимостей, код должен быть кроссбраузерным и работать во всех современных браузерах, а также msie8+ и opera 12.16. Нужно учесть, что таких дропдаунов может быть несколько на странице.

Список пользователей

Андрей Рогозов, Екатерина Копылова, Павел Дуров, Лев Левиев, Иван Смирнов, Людмила Романченко, Андрей Смирнов, Андрей Чернышев

Поиск по домену

Поиск по домену (screen_name – короткое имя) осуществляется с выполнением запроса на сервер. Пример домена для Павла Дурова: iddurov, для Льва Левиева: idleviev. Исключения для Ивана Смирнова и Андрея Смирнова: idismirnov и idasmirnov соответственно.

Запуск локально

Требует Vercel. Находясь в корневой папке, выполнить vercel dev.

Releases

No releases published

Packages

No packages published