Когда я захожу в / вход в маршрут, он показывает мне компонент /: имя пользователя маршрута. Как этого избежать? - PullRequest
0 голосов
/ 20 января 2019

Я понимаю, почему это происходит, но я не могу понять, как этого избежать.Маршрут /: username предполагает, что параметр входа в URL на самом деле является именем пользователя, но дело в том, что у меня также есть / signin route.

{ path: '/:username', component: Profile, children: [
    { path: '', component: Map , name: 'Profile'},
    { path: 'locations', component: Locations, name: 'Locations'},
    { path: 'map', component: Map, name: 'Map'}
]},
{ path: '/signin', component: Signin, name: 'Signin'}

Есть ли способ сделать так, чтобы /: username route предполагает, что параметр является именем пользователя, только если нет другого маршрута, использующего этот же параметр

1 Ответ

0 голосов
/ 20 января 2019

См. Соответствующий приоритет :

Иногда один и тот же URL может соответствовать нескольким маршрутам. В таком случае приоритет соответствия определяется порядком определения маршрута: чем раньше определен маршрут, тем более высокий приоритет он получает.

Это означает, что вам нужно изменить порядок определения маршрутизатора.

{ path: '/signin', component: Signin, name: 'Signin'},
{ path: '/:username', component: Profile, children: [ /* ... */ ]},
...