2016-09-12 95 views
4

我創建了一個角度2應用程序。在我app.component我有了這個Angular 2中登錄頁面(其中一個用於登錄和其他佈局)的不同佈局

<header-component><header-component> 
<router-outlet></router-‌​outlet> 

與路由器:

const appRoutes: Routes = [ 
    { path: 'profesionals', component: CrearEditarProfesionalsComponent }, 
    { path: 'home', component: HomeComponent }, 
    { path: 'login', component: LoginComponent }, 
    { path: '', component: HomeComponent } 
]; 

,當我瀏覽登錄我想擺脫的

<header-component> 

而且對所有用戶登錄時的其他頁面我只想按原樣顯示佈局。我是否必須使用ng-if來實現這個服務?最好的方法是什麼?

+0

如果服務聽起來不錯.. –

回答

1

您可以刪除您的頁面。爲了達到你想要達到的結果,你可以讓所有的組件都顯示爲標題組件的子路由。

你可以這樣實現它:

{ path: 'dashboard', component: HeaderComponent, children: [ 
    { path: '', component: HeaderComponent }, 
    { path: 'mypath', component: MyComponent } ] 
}, 
{ path: 'login', component: LoginComponent } 

這樣每個屬於HeaderComponent路線將顯示HeaderComponent和子組件的子路徑。

而您的登錄將不會顯示HeaderComponent。

+0

在這種情況下,我應該在哪裏找到路由器插座?現在它在app.component.ts –

+0

得知它,當你使用子路由你必須創建另一個路由器插座,這個新的插座進入孩子的父母,所以你有一個新的佈局。 –

相關問題