2017-08-23 3 views
1

とネストされたルートは、私は、問題は、私は、ユーザー/設定に移動したときに、彼は、ユーザー/開こうということであるAngular4Angular4 - のparams

/* Frame Default */ 
{ 
    path: '', component: FrameDefaultComponent, 
    children: [ 
     {path: 'home', component: SiteHomeComponent}, 
     {path: 'home/:page', component: SiteHomeComponent}, 
     { 
      path: 'user/:id', component: SiteUserProfileComponent, 
      children: [ 
       {path: '', redirectTo: 'home', pathMatch: 'full'}, 
       {path: 'home', component: SiteUserProfileHomeComponent}, 
       {path: 'about', component: SiteUserProfileAboutComponent} 
      ] 
     }, 
     { 
      path: 'user/settings', component: SiteUserSettingsComponent, 
      children: [ 
       {path: '', redirectTo: 'home', pathMatch: 'full'}, 
       {path: 'home', component: SiteUserProfileHomeComponent}, 
       {path: 'about', component: SiteUserProfileAboutComponent} 
      ] 
     }, 
     {path: 'demo', component: SiteDemoComponent} 
    ] 
}, 

の私のユーザープロファイルのルーティングを得た:任意のアイデア... IDをどのように私はこの問題を解決することができますか?

答えて

1

が、この作品、この

{ 
    path: '', component: FrameDefaultComponent, 
    children: [ 
    {path: 'home', component: SiteHomeComponent}, 
    {path: 'home/:page', component: SiteHomeComponent}, 
    { 
    path: 'user/settings', component: SiteUserSettingsComponent, 
    children: [ 
     {path: '', redirectTo: 'home', pathMatch: 'full'}, 
     {path: 'home', component: SiteUserProfileHomeComponent}, 
     {path: 'about', component: SiteUserProfileAboutComponent} 
    ] 
    }, 
    { 
    path: 'user/:id', component: SiteUserProfileComponent, 
    children: [ 
     {path: '', redirectTo: 'home', pathMatch: 'full'}, 
     {path: 'home', component: SiteUserProfileHomeComponent}, 
     {path: 'about', component: SiteUserProfileAboutComponent} 
    ] 
    }, 
    {path: 'demo', component: SiteDemoComponent} 
] 
}, 
+0

おかげのようなあなたのルートの順序を変更してください。しかし、これは本当に正しく「クリーンな」方法ですか? – Budi

+0

角度ルータはこのように動作します。それは最初に一致するルートを見つけます。最初は、idのための '設定'が必要でした。 –