2017-08-01 106 views
2

我知道在Angular2中ActivatedRouteSnapshot.component包含引用路徑(如果我調用Router.routerState.snapshot),但是如何爲組件類獲取當前(或最小:創建的)實例?在Angular2的路由器上獲取活動路由上的組件實例?

Injector.get(..)不返回組件的實例並創建組件的新實例也沒有幫助(我)。

+0

你能詳細介紹一下你在做什麼嗎?你想在哪裏獲得對組件類的引用?什麼組件? –

+0

組件具有(取決於環境)有時屬性('showFooter')設置爲「true」,有時設爲「false」 - 它取決於從REST端點接收的數據。如果它爲false,則包含''和<的App組件應該隱藏或顯示頁腳。 – GreNodge

回答

5

您可以使用

<router-outlet 
    (activate)='onActivate($event)' 
    (deactivate)='onDeactivate($event)'></router-outlet> 

其中$event是組件實例,例如將其分配到服務,使其全局可用。

https://angular.io/api/router/RouterOutlet

見你也可以創建自定義<router-outlet>組件,自動做到這一點。

+1

適用於我 - 感謝您的快速響應。 :) – GreNodge

+0

很高興聽到:) –

相關問題