Поиск и выбор
Поиск с задержкой
Выбор с настоящим debounce: короткий запрос не запускает поиск, длинный ждёт паузу в наборе, а спиннер живёт внутри поля, а не отдельным блоком.
React + Tailwind, совместим с shadcn: нажмите «Копировать для ИИ» — агент в Cursor или Claude Code поставит его через shadcn CLI.
Что можно поменять
- источник строк через options
- минимальную длину запроса через minChars и паузу через delay
- текст пустой выдачи через emptyLabel
Ссылка для ИИ-агента: в ней превью, код и инструкция.
Превью

Использовать с ИИ
- 1. Скопируйте ссылку.
- 2. Напишите агенту своими словами и вставьте её в предложение.
- 3. Агент откроет ссылку и поставит компонент из реестра.
добавь это на главную первым экраном:
https://vibeui.ru/c/combobox-026?theme=dark
Не знаете, куда вставить? Пошаговый гайд
Показать полную инструкцию
То, что лежит по ссылке в развёрнутом виде. Нужна, если агент не может открыть ссылку — тогда вставьте этот текст целиком.
Загружается…
Как использовать
<Combobox026
label="Город"
options={["Прага", "Прато", "Пусан"]}
minChars={2}
delay={400}
onSelect={(value) => console.log(value)}
/>Пример вызова. Сам компонент агент ставит из реестра по ссылке «Копировать для ИИ».
Настройки
- Символов до поиска
minChars· по умолчанию: 2- Пауза набора, мс
delay· по умолчанию: 400- Акцент
accent· по умолчанию: цвет темы- Фон
background· по умолчанию: цвет темы
Ещё в разделе «Поиск и выбор»
Частые вопросы
- Как установить компонент «Поиск с задержкой» через Cursor или Claude Code?
- Нажмите «Копировать для ИИ» на этой странице и вставьте текст в чат агента. В инструкции команда установки через shadcn CLI, зависимости и что сохранить — агент поставит именно этот компонент, а не перерисует похожий.
- Какие зависимости у компонента «Поиск с задержкой»?
- Никаких npm-пакетов, кроме React и Tailwind CSS.
- Что можно поменять в компоненте «Поиск с задержкой»?
- Можно менять: источник строк через options; минимальную длину запроса через minChars и паузу через delay; текст пустой выдачи через emptyLabel. Сохранить как есть: локальную палитру --vibeui-combobox-026-* и не подменять её токенами вашей темы; порог minChars до старта поиска: без него короткий запрос гоняет debounce впустую; очистку таймера в useEffect при каждой смене запроса — без неё устаревший ответ перезаписывает актуальный.
- Компонент «Поиск с задержкой» бесплатный?
- Да. Превью открыто без регистрации, а с бесплатным аккаунтом можно скопировать до 20 компонентов в месяц.
Для разработчика
npx shadcn@latest add https://vibeui.ru/r/pro/combobox-026.jsonКоманде нужна подписанная ссылка: войдите и откройте «Исходник компонента» ниже — там рабочая ссылка на 30 минут. Все способы установки
Технические заметки
Компонент самодостаточен: один файл, ноль зависимостей, собственная палитра в локальных переменных --vibeui-combobox-026-*. Клиентский: три состояния выведены из двух строк — typed (query) и debounced. Пока запрос короче minChars, поиск не стартует вовсе: useEffect с таймером даже не подписывается. Как только длины хватает, эффект ставит setTimeout на delay и чистит его при каждой смене запроса — классическая защита от гонки; загрузка выводится как debounced !== needle, отдельного булева флага нет. Спиннер — вращающийся бордюр внутри обёртки поля, position:absolute, а не блок под списком. Список скрывается атрибутом hidden, а не удаляется, поэтому aria-controls всегда указывает на существующий узел.
Теги
- combobox
- debounce
- async
- empty state
Исходник компонента
Тот же файл, который поставит агент. Нужен, если вы предпочитаете скопировать код руками.
Загружается…