Разделяйте независимые правила фильтрации на чистые функции, а composable используйте для координации состояния и производного результата.
Как организовать фильтрацию большого списка продуктов с несколькими фильтрами разной логики во Vue: хранить всё в одном composable или разделять на отдельные?
Разделяйте независимые правила фильтрации на чистые функции, а composable используйте для координации состояния и производного результата.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Разделяйте независимые правила фильтрации на чистые функции, а composable используйте для координации состояния и производного результата.
Общий composable может хранить параметры и вычислять список через computed; отдельные правила удобнее проверять и комбинировать. Не нужно создавать composable для каждого простого сравнения. Для большого набора данных измерьте стоимость, рассмотрите debounce ввода, серверную фильтрацию и пагинацию. Виртуализация уменьшает DOM, но не стоимость полного перебора.