librown
@librown
На-все-руки-мастер и немного кодер

Как правильно передавать get-параметры и удобно работать с Url в js?

Привет!
Есть типичный интернет-магазин с фильтрацией товаров по разным параметрам/критериям.

Начал делать примерно так:
site.ru/cat/?param=102,105,204&view=1&sort=asd
Но при изменении (вкл/выкл) какого-нибудь параметра необходимо парсить URL, парсить параметры (по запятой), заново пересобирать URL, что кажется мне довольно нудным занятием.

Сейчас вот наткнулся, что некоторые передают параметры массивом:
site.ru/cat/?param[]=102&param[]=105&param[]=204&view=1&sort=asd

Какой подход верный? Посоветуйте, как правильно решаются подобные задачи на клиенте?

P.S. Нашел js-библиотеки для парсинга URL, например https://github.com/Mikhus/jsurl
Но они не работают с массивами (param[] - такие имена параметров не поддерживают).

Спасибо!
  • Вопрос задан
  • 4552 просмотра
Пригласить эксперта
Ответы на вопрос 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
param[] - такие имена параметров не поддерживают


Ну потому что это невалидная штука. Она работает только в PHP и больше нигде. Вместо этого следует использовать разделитель

/cat/?param=102,105,204&view=1
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы