Size: a a a

JavaScript Noobs — сообщество новичков

2020 January 31

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
🧨 ethorz
но, получение данных должно отдаваться уже с сервера фильтрованный список, лучше делать эти события на фронте независимыми
лучше это тем, что при инициализации будет быстрее грузиться
источник

V

Vladimir in JavaScript Noobs — сообщество новичков
🧨 ethorz
когда какой то фильтр был применен - тут получается два запроса, один на изменение активного фильтра и получение списка с новыми фильтрами
а для чего делать запрос для изменения активного фильтра? если мы на фронте поменяли фильтр, то сразу засылаем запрос на получение данных списка блюд, и если нам пришел зенебл объект, то сразу и ставим этот фильтр как активный
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
смотря где хранить значения фильтров, в общем
источник

n

null in JavaScript Noobs — сообщество новичков
делаю компонент каталога на реакте со стейт менеджером
источник

V

Vladimir in JavaScript Noobs — сообщество новичков
🧨 ethorz
смотря где хранить значения фильтров, в общем
думаю фильтров не 3 миллиона, их можно и на фронт сразу все получить
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
Vladimir
а для чего делать запрос для изменения активного фильтра? если мы на фронте поменяли фильтр, то сразу засылаем запрос на получение данных списка блюд, и если нам пришел зенебл объект, то сразу и ставим этот фильтр как активный
ну если сохранять фильтр не надо, то не надо)
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
а так можно сохранять на сервере для конкретного пользователя
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
чтобы при след заходе эти фильтры были
источник

V

Vladimir in JavaScript Noobs — сообщество новичков
🧨 ethorz
а так можно сохранять на сервере для конкретного пользователя
ну если не требуется хранить эти знания для последующих заходов на сайт конкретного пользователя, то лучше сразу получать весь список фильтров
источник

V

Vladimir in JavaScript Noobs — сообщество новичков
null
делаю компонент каталога на реакте со стейт менеджером
ну если у вас только эта логика, то можно и не юзать стейт менеджеры, можно сделать всю логику в хоке например
источник

n

null in JavaScript Noobs — сообщество новичков
набросал до этого пример ответа
{
 "status": 200,
 "result": {
   "categories": [
     {
       "id": 1,
       "code": "burger",
       "title": "Бургеры"
     },
     {
       "id": 2,
       "code": "combo",
       "name": "Комбо-наборы"
     }
   ],
   "collections": [
     {
       "id": 23,
       "code": "party",
       "title": "Вечеринка"
     },
     {
       "id": 24,
       "code": "family",
       "title": "Семейный"
     }
   ]
 }
}
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
тут все проще, запрос списка фильтров с полями, id, filterType, label, value, по filterType можно понять, к какому типу фильтров относится, потом запрос данных, при изменении фильтров и сохранении - делать запрос на получение данных, передав значения этих фильтров в виде массива
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
вот и все
источник

n

null in JavaScript Noobs — сообщество новичков
а сами блюда
{
   "status": 200,
   "result": [
       {
           "id": 34,
           "parent_id": 1
,
           "category": 3,
           "collections": [26, 27],
           "title": "Ким Чили Пеппер",
....
источник

🧨

🧨 ethorz in JavaScript Noobs — сообщество новичков
null
набросал до этого пример ответа
{
 "status": 200,
 "result": {
   "categories": [
     {
       "id": 1,
       "code": "burger",
       "title": "Бургеры"
     },
     {
       "id": 2,
       "code": "combo",
       "name": "Комбо-наборы"
     }
   ],
   "collections": [
     {
       "id": 23,
       "code": "party",
       "title": "Вечеринка"
     },
     {
       "id": 24,
       "code": "family",
       "title": "Семейный"
     }
   ]
 }
}
нормальный вариант
источник

n

null in JavaScript Noobs — сообщество новичков
стоит ли сразу запросить все блюда (их мало, максимум 50 позиции) и сразу закэшировать, потом уже их фильтровать, либо по мере выставления фильтрации запрашивать блюда и кэшировать
источник

V

Vladimir in JavaScript Noobs — сообщество новичков
так если вы их будите кэшировать, то получается вы и фильтровать будите на фронте
источник

V

Vladimir in JavaScript Noobs — сообщество новичков
для чего тогда слать запросы на сервер с типом фильтров
источник

n

null in JavaScript Noobs — сообщество новичков
Vladimir
так если вы их будите кэшировать, то получается вы и фильтровать будите на фронте
так я и бууду фильтровать на фронте ))
источник

n

null in JavaScript Noobs — сообщество новичков
мне нужны лишь списки фильтров
источник