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

Как удалить или добавить строку запроса в 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
}

Ответы [ 2 ]

3 голосов
/ 28 января 2020

Внутри вашего onClick метода сначала обновите объект запроса, а затем pu sh до $router:

onClick() {
  const query = this.$route.query;

  // add key
  query.key = value;

  // delete name
  delete query.name;

  this.$router.push({ query: query });
}
0 голосов
/ 28 января 2020
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, без необходимости обновлять sh страницу

...