169 похожих чатов

Где можно посмотреть компонент фильтра с инпутами, чекбоксами, но ещё

и в адресной строке дублируется запрос?

22 ответов

8 просмотров

Ну вы можете повесить onChange на input и в этом обработчике управлять параметрами в адресной стороке через useSearchParams из реакт роутера доке есть пример, правда с onSubmit формы, но суть одна и таже https://reactrouter.com/en/main/hooks/use-search-params или напрямую работать с history api в этом же обработчике const url = window.location.pathname + (urlSearch ? `?${urlSearch}` : '') + window.location.hash; window.history.replaceState({}, '', url); какой способ выбрать? ну это уже вкусовщина, одни ругают роутер и кроме того в вашем проекте его может и не быть. Другие его наоборот рекомендуют

Sergey- Автор вопроса
Rain
Ну вы можете повесить onChange на input и в этом о...

А почему нельзя new urlsearchparams использовать?

Sergey
А почему нельзя new urlsearchparams использовать?

А я вот ХЗ произойдет ли переход на новый адрес при изменении параметра в url если мы его в urlsearchparams через set изменим. Я им просто для этих целей не пользовался. ВОзможно и можно. По идее при изменении параметра в url нам надо не переходить по новому адресу, а просто изменить текущий. Может быть это можно и через urlsearchparams, а может и нет

Rain
А я вот ХЗ произойдет ли переход на новый адрес пр...

а вообще как практика показывает? сейчас юрлпараметры вообще используют? мне кажется уже лет 10 не видел таких сайтов

Alexey Filippov
а вообще как практика показывает? сейчас юрлпарам...

навскидку HH их пользует Ну вот допустим я хочу сохранить отобранные мной вакинсии например удаленка-реакт 1-3 года опыта а потом я эту ссылку хочу отправить коришам, что бы они тоже себе чет подходящее нашли как мне это сделать без url параметров? в общем информация об устареании url-параметров несколкьо преувеличена?

ну и просто ссылку например в избранное сохранить не хранить же это все в localStorage

Rain
ну и просто ссылку например в избранное сохранить ...

а если углубиться в реакт как бы ты делал

Alexey Filippov
а если углубиться в реакт как бы ты делал

так это же вроде как просто внешнее поведение сайта то что мы это реализуем например на реакте или без реакта это уже просто выбор технологии. А так наверно в реакте просто через санку редакса менял бы эти параметры через HISTORY API

Rain
ну и просто ссылку например в избранное сохранить ...

ну допустим фильтрация продуктов, параметры фильтра транслируем в юрл параметры и делаем запрос к беку. параметры фильтра доставать из юрла и пропихивать в фетч

Alexey Filippov
ща почитаю что такое history api

ну реакт роутер это фактически обертка над этим АПИ

Sergey Grishchenko
Плохой вариант очень

в реакт пицце именно так он учил)

Sergey Grishchenko
Плохой вариант очень

а как правильно? сохраняю в стейте и в юрл, а в фетч беру со стейта?

Ilya Agarkov
почему?

Потому что url это глобальная никак не типизированная "переменная"

Sergey Grishchenko
Потому что url это глобальная никак не типизирован...

тебе в любом случае из него читать при рефреше страницы, так что зачем создавать два источника данных?

Ilya Agarkov
тебе в любом случае из него читать при рефреше стр...

Ну мы ж данные из бэкенда не читаем на постоянной основе? Мы их в стейт перекладываем

Похожие вопросы

Обсуждают сегодня

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
А можно вопрос? Мне сегодня сказали что у меня функция (которая просто заполняет массив значениями) не правильная void Full(double * arr, int n) { for (int i = 0; i < n; i...
† C E †
7
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
10
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Здравствуйте, хочу сделать HelloWorld в консоли Дельфи, но функция API ничего не выводит, что я делаю не так? program Hello; {$APPTYPE CONSOLE} uses System.SysUtils, WinAPI.Wi...
Sergey Vinogradov
20
Карта сайта