Vue-router: возможно ли передавать параметры при программном перенаправлении через путь? - PullRequest
1 голос
/ 22 апреля 2019

По сути, я хочу перенаправить на динамический URL, что-то вроде: /resource/:id, но я также хочу передать некоторые параметры одновременно. Я не хочу идти по пути строки запроса.

Итак, что-то вроде:

this.$router.push({path: 'resource/' + id, params: {
      test: "HELLO"
   }
});

Свойство передается, когда оно у меня вот так (но это не правильный маршрут)

this.$router.push({name: 'resource', params: {
      test: "HELLO"
   }
});

Можно ли делать то, что я хочу, или мне нужно начать изучать VueEx?

Ответы [ 2 ]

2 голосов
/ 22 апреля 2019

Вы можете сделать это так:

ваш роутер:

{
    path: '/resource/:id',
    name: 'route-name',
    component: Component,
    props: true,
},

и в вашем компоненте вы можете получить все параметры в качестве реквизита:

props: ['id', 'name', '...'],

если вы хотите вызвать маршрут в роутер-линке, вы можете сделать это так:

<router-link tag="a" :to="{name: 'route-name', params: {id: 1, name: 'John', ...}}">

Надеюсь, это поможет вам.

0 голосов
/ 23 апреля 2019

Я пошел по маршруту VueX и создал магазин. Не похоже, что можно делать то, о чем я думал вначале.

...