Vue-Router: глобальное добавление значения запроса к маршрутам - PullRequest
0 голосов
/ 11 февраля 2019

? Цель

Я хотел бы добавить ?instance=123 к каждому генерируемому маршруту.

? Задача

Я добавил охрану для добавлениязначение до перехода к каждому маршруту, , но этот подход не работает должным образом.

router.beforeEach((to, from, next) => {
  next({ query: { instance: '123' } });
});

Как это сделать?

?️‍♂️ Контекст

  • "vue-router": "^ 2.5.3"
  • "vue": "2.3.2",

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

Использование кода из github , опубликованного codeofsumit , кажется, достигает того, что вы хотите:

router.beforeEach((to, from, next) => {  
  if (!to.query.instance) {
    to.query.instance= '123';
    next({ path: to.path, query: to.query });
  } else {
    next();
  }
});

То, что это делает, добавляетсвойство instance для объекта запроса, что вы и делали в своей попытке, но вы упустили ту часть, где он должен вызвать next с измененным объектом, иначе он просто продолжит исходный маршрут.

0 голосов
/ 11 февраля 2019
router.beforeEach((to, from, next) => {
  to.query.instance = '123';
  next();
});
...