Как удалить или добавить строку запроса в vue без изменения маршрута?

Как удалить или добавить строку запроса в vue без изменения маршрута?

28.01.2020 06:58:34 Просмотров 22 Источник

Как удалить или добавить строку запроса в vue без изменения рендеринга компонентов внутри маршрута?

Я хочу сделать это, когда нажму на кнопку:

onClick() {
 this.$route.params.add('key', value); //localhost:8080/?key=value
 this.$route.params.add('name', value); //localhost:8080/?key=value&name=value
 this.$route.params.remove('key') //localhost:8080/?name=value
}
У вопроса есть решение - Посмотреть?

Ответы - Как удалить или добавить строку запроса в vue без изменения маршрута? / How to remove or add querystring in vue without change the route?

ebbishop

28.01.2020 07:15:11

Внутри onClick:

$router
https://stackoverflow.com/questions/59952583/how-to-remove-or-add-querystring-in-vue-without-change-the-route/59952875#comment106025536_59952875
Это означает, что вы пытаетесь перейти в то же самое место, где вы были раньше. Если запрос отличается, эта ошибка не должна отображаться
https://stackoverflow.com/questions/59952583/how-to-remove-or-add-querystring-in-vue-without-change-the-route/59952875#comment106040203_59952875
Это приводит к повторному отображению компонентов. например, он запускает beforeRouteUpdateкоторый мне не нужен. просто заменить/добавить / удалить строку запроса в url..
Ferkze

28.01.2020 10:01:45

onClick() {
  this.$route.query.key = value;   // localhost:8080/?key=value
  this.$route.query.name = value;  // localhost:8080/?key=value&name=value
  delete this.$route.query.key;    // localhost:8080/?name=value
}

Таким образом, вы можете реактивно изменить запрос $router, не обновляя страницу.

https://stackoverflow.com/questions/59952583/how-to-remove-or-add-querystring-in-vue-without-change-the-route/59955391#comment106039974_59955391
не работает, когда у меня нет запроса exist в url
https://stackoverflow.com/questions/59952583/how-to-remove-or-add-querystring-in-vue-without-change-the-route/59955391#comment106040119_59955391
вообще никаких работ. url-адрес не меняется
Закрыть X