Как правильно получать изначальные значения фильтров при работе с localStorage?
Есть таблица списка домашних заданий ученика с возможностью фильтрации по курсам, занятиям и группам (3 группы чекбоксов). При инициализации страницы и каждом обновлении фильтров на бэк уходит запрос с 3 массивами выбранных в фильтрах значений и на основе их возращаются 3 массива, но уже отфильтрованных, по которым рисую таблицу.
Мне упала таска сохранять фильтры в localStorage, чтобы пользователю каждый раз не вводить одни и те же фильтры. Но тогда при первом запросе я уже не смогу получить список всех возможных курсов, занятий и групп для отрисовки чекбоксов - т.к. мне сразу же придут отфильтрованные.
Единственное что придумал - при инициализации посылать 2 запроса: за всеми списками (с пустыми фильтрами), и отдельно за отфильтрованными (с фильтрами из localStorage). Но выглядит хреново.
Еще не ясно, нужно ли очищать периодически эти фильтры из локального хранилища - вдруг мы добавим в таблица новый фильтр, данные с хранилищем не совпадут и вылезут баги.
Как вообще правильно со стороны бэка и фронта подобное должно быть реализовано?
почему б не фильтровать/сортировать все на фронте? Получать полный набор данных с бэка и далее все на фронте.: сортировать согласно сохранным в LS преференциям или показывать все.
Я не понимаю в чем проблема. Это обычная практика, когда выставленные фильтры запоминаются сайтом. Единственный тонкий момент - на забыть добавить кнопку СБРОСИТЬ ФИЛЬТРЫ на видном месте, чтобы даже самый тупой видел, что сейчас стоят фильтры с прошлого визита.