Laravel Livewire Async Select: красивые выпадающие списки без головной боли
Привет, коллеги!
Наткнулся в англоязычном сообществе на интересный пакет и хочу поделиться находкой с вами!
Livewire Async Select — это готовый компонент для Laravel, который создает красивые выпадающие списки с асинхронной загрузкой данных. Под капотом — связка Livewire и Alpine.js.
Простой пример "как начать"
В вашем Blade-шаблоне:
И соответствующий роут в API:
Почему это лучше стандартных решений?
- Асинхронная загрузка - не грузит всю базу при открытии страницы
- Встроенный поиск с умным debouncing (не дёргает API на каждое нажатие)
- Красивые чипсы для множественного выбора Без jQuery - только современный Alpine.js
- Готовые стили под Tailwind CSS
- Полная кастомизация через слоты
- Нативная интеграция с Livewire
Что было раньше:
- Select2 с jQuery зависимостями
- Самостоятельная реализация debounce
- Кастомные стили для каждого проекта
- Проблемы с реактивностью в Livewire
Где это пригодится?
- Поиск пользователей в админ-панелях
- Выбор товаров в корзине заказа
- Фильтрация по категориям в каталогах
- Любые формы с большими справочниками
Коллеги, а какие инструменты используете для подобных задач? Поделитесь в комментариях вашими любимыми пакетами или решениями.