2016-09-27 3 views
4

두 개의 라우터 콘센트, 기본 콘센트 및 모달 콘센트가 필요합니다. /login으로 이동하면 기본 콘센트에 집 구성 요소를 표시하고 모달 콘센트에 내 로그인 구성 요소를 표시하려고합니다. 이런 식으로 뭔가 :각도 2 - 끔찍한 URL이없는 명명 된 라우터 콘센트

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

/home(modal:login) 같은 끔찍한 보조 URL을 사용하여 수행 할 수 있지만, 물론 아무도 자신의 URL이 그렇게보고 싶어하지 않는다.

어떻게하면이 URL없이 해결할 수 있습니까?

+0

콘센트의 이름에서 나온 이상한 추측은 모달 표시를 위해 두 번째 라우터 콘센트를 사용하고 있음을 나타냅니다. 대신이 방법을 사용하는 것이 좋습니다. http://blog.brecht.io/Modals-in-angular2/? –

+1

이것은 좋지 않은 예일 수 있습니다. "이 경로의 경우 콘센트 a에서 콘센트 a를 열고 콘센트 b에서 컴포넌트 b" – adamfinstorp

+0

둘 이상의 각도 루프를 사용하려면 라우터 - 콘센트, 당신은 그 URL을 참 아야합니다. 라우터와 URL은 근본적으로 결혼 했으므로 그 주위에는 방법이 없습니다. –

답변

2
이 경로는/로그인 때, HomeComponent 차 콘센트에 갈 것입니다 및 LoginComponent 이름을 가진 라우터 콘센트에 갈 것입니다 있는지 확인합니다

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

당신이 구성 요소 적은 경로에 대한 이동하지 않는 이유

, '모달'.

관련 문제