Vue.js 具有动态路由的Vue路由器问题

Vue.js 具有动态路由的Vue路由器问题,vue.js,vuejs2,vue-router,Vue.js,Vuejs2,Vue Router,我正在尝试以下路线: { path: '/', name: 'home', component: Home }, { path: '/:username', name: 'login', component: Login }, { path: '/dashboard', name: 'dashboard', component: Dashboard } 但当我试图打开/dashboard时,我会看到登录页面。这里的顺序很重要。您可以交换/dashboard和

我正在尝试以下路线:

{
  path: '/',
  name: 'home',
  component: Home
},
{
  path: '/:username',
  name: 'login',
  component: Login
},
{
  path: '/dashboard',
  name: 'dashboard',
  component: Dashboard
}

但当我试图打开/dashboard时,我会看到登录页面。

这里的顺序很重要。您可以交换
/dashboard
/:username
位置

[{
  path: '/',
  name: 'home',
  component: Home
},
{
  path: '/dashboard',
    name: 'dashboard',
      component: Dashboard
},
{
  path: '/:username',
  name: 'login',
  component: Login
}]

这里的秩序很重要。您可以交换
/dashboard
/:username
位置

[{
  path: '/',
  name: 'home',
  component: Home
},
{
  path: '/dashboard',
    name: 'dashboard',
      component: Dashboard
},
{
  path: '/:username',
  name: 'login',
  component: Login
}]

这很正常。路由器正在匹配从第一个到最后一个的路由。 /仪表板完全匹配/:用户名为的用户名==“仪表板”


您应该将login roote放在数组的末尾,但为了更安全,您最好在它前面加上前缀(比如/user/:username)

这很正常。路由器正在匹配从第一个到最后一个的路由。 /仪表板完全匹配/:用户名为的用户名==“仪表板”


您应该将login roote放在数组的末尾,但为了更安全,您最好在它前面加上前缀(比如/user/:username)

Oh-wow。这只是工作,谢谢!这在文件里有描述吗?也许你能帮我。看看这个:哦,哇。这只是工作,谢谢!这在文件里有描述吗?也许你能帮我。看看这个: