2016-08-30 89 views
2

我在大項目中工作並面臨一個問題。它有幾頁沒有模板(我的意思是一些代碼,包括主要內容,如導航欄和頁腳)和許多其他頁面的佈局。未註冊用戶無法訪問佈局頁面。首先,他應該在沒有佈局的情況下登錄頁面,然後他將能夠看到佈局的主要內容。Angular 2 - 佈局組件

主要概念是在包含路線的頁面之間進行導航,並在佈局中包含此頁面(如果需要的話)。所以,當所謂的一些組件,它包裝本身的佈局調用某種「父組件」

RootComponent非常簡單:

Component({ 
    selector: 'my-app', 
    template: `<router-outlet></router-outlet>`, 
    directives: [ROUTER_DIRECTIVES], 

}) 

export class RootComponent { 

    constructor(){  
    } 

} 

所有魔應該成爲從路由組件。此外,我還附帶了導航和頁面依賴關係的img。

有人可以寫簡單的應用程序的例子嗎?

enter image description here

+0

上帝,我找到了答案。它稱爲Transclusion。好的指導可以在這裏閱讀:https://toddmotto.com/transclusion-in-angular-2-with-ng-content – dantey89

回答

0

這正是新ngModule是專爲。使用它可以創建一個包含主應用程序和包含登錄組件的LoginModule的AppModule。見https://angular.io/docs/ts/latest/api/core/index/NgModule-decorator.html

+0

我讀過它,但仍然明顯無法理解如何正確使用它 – dantey89

+0

我的意思是,我知道我們可以導航到模塊並聲明該模塊使用的組件的範圍。但如何說組件使用另一個組件作爲佈局 – dantey89

+0

每個單獨的模塊需要一個主AppComponent'作爲「佈局」。基本上只需要英雄教程,並加倍文件 – watzon