меня в сторе лежит объект с бэка, в котором массив карточек для отображения. Фильтровать через sort я его не могу, мне надо сохранить индексацию. Получается, я прохожу по массиву, и через флаг isVisible у карточек отображаю их или нет.
Как правильно можно сделать такой функционал, если юзер ткнул несколько фильтров одновременно? У меня есть объект filters, где данные о том, какие фильтры и как юзер использует.
Заранее огромное спасибо🙏
Индексация не сохранится при фильтрации никак А, у тебя другая фильтрация Проходишь по массиву и проверяешь на карте все фильтры - в чем проблема?
Типа сделать огромный if в цикле, который проверяет все вместе по объекту фильтров юзера?🤔
что значит фильтровать через сорт?
ну да и ставит твой флаг а что пугает?
Да я просто уточнить, нормально ли так делать, спасибо🙏
Не понятно совсем, в чём вопрос. > Фильтровать через sort я его не могу так сорт и не фильтрует, он сортирует... > мне надо сохранить индексацию Чтобы хранить оригинальный индекс у каждой сущности вне зависимости от того, как меняется список - можно его сохранить в самой сущности, если он правда нужен. > Как правильно можно сделать такой функционал, если юзер ткнул несколько фильтров одновременно? В фильтрации проверять, что сущность подходит под каждый фильтр.
Да я делаю первый проект большой на работе, еще туповат пока💩 спасибо, мне там выше подсказали, будв пробовать
можно не делать огромный if можно подойти к вопросу функционально создаешь массив предикатов по выбору пользователя добавляешь в этот массив заранее определенный предикат, со связанным параметром пишешь функцию-обертку, которая на вход получает значение из твоего массива, который ты будешь фильтровать. функция обертка возвращает true/false в зависимости отнабора предикатов как итог: отдельная функция обертка, которая красиво и лаконично размещается в сортирующем методе отдельно набор предикатов, который всегда можно проверить/увидеть из переменной
Обсуждают сегодня