Я видел this thread о том, как добавлять/изменять параметры запроса без дублирования, но я не могу заставить его работать.Как установить параметры запроса или параметры динамически с помощью железа-маршрутизатора?
У меня есть страница в моем приложении Meteor, в которой перечислены элементы и разрешена фильтрация. Я хочу, чтобы фильтрация была основана на URL-адресах, поэтому каждое изменение фильтра должно отражать URL-адрес. Я использую железо-маршрутизатор, чтобы потом обновить подписку.
По какой-то причине я не могу изменить запрос. Этот код не вызывает каких-либо действий, если вызывается из Template.templateName.events(...)
:
# valuePairs = ["foo=bar", "bar=foo"]
newUrl = Router.current().route.path {}, { query: valuePairs.join('&') }
Router.go newUrl
Но если я называю Router.go(newUrl)
из командной строки, ожидаемый результат происходит, то есть обновления URL.
Есть ли другой предпочтительный метод для изменения запроса?
Если нет, то как я могу сделать над кодом работу?
UPDATE - Я только что нашел, что после запуска события, если я вернусь в историю браузера, я могу увидеть правильный URL. Похоже, что-то (?) Запускает загрузку другой страницы, чтобы вернуться к исходной странице.
О, я совершенно забыл об этом вопросе. То же, что вы предложили здесь, было разрешено на [GitHub] (https://github.com/iron-meteor/iron-router/issues/900#issuecomment-59673360), когда у меня все еще была проблема. Благодарю вас. И я (лично) нахожу 'event.preventDefault()' более читаемым/очевидным, но это только предпочтения. –