2016-09-27 85 views
4

我想有两个路由器插座,主要的一个,和一个模式插座。当导航到/login时,我想在主插座中显示我的家庭组件,并在模式插座中显示我的登录组件。事情是这样的:Angular 2 - 命名的路由器插座没有可怕的URL

{ 
    path: 'login', 
    component: HomeComponent 
}, 
{ 
    path: 'login', 
    component: LoginComponent, 
    outlet: 'modal' 
} 

这可能是通过使用可怕的辅助网址,像/home(modal:login)做,但当然没有人希望自己的网址,像她那样。

如何在没有这些URL的情况下解决这个问题?

+0

从你店名称的奇怪猜测告诉我,你正在使用第二个路由器出口显示模式,如何使用这种方法,而不是:http://blog.brecht.io/Modals-in-angular2/? –

+1

这可能是一个不好的例子,但我希望能够说:“对于这条路径,在插座a中打开组件a,在插座b中打开组件b” – adamfinstorp

+0

如果要将角路由器与多个路由器插座,你必须忍受这些网址。有没有办法绕过它,因为路由器和URL基本上已婚。 –

回答

2

你为什么不出去成分少的路线,

{ 
    path: 'login', 
    children: [ 
     { 
      path: '', 
      component: HomeComponent 
     }, 
     { 
      path: '', 
      component: LoginComponent, 
      outlet: 'modal' 
     } 
    ] 
} 

这将确保,当你的路线/登录,HomeComponent将在主要出口去LoginComponent会去路由器出口与名“模式”。

相关问题