2017-08-11 53 views
0

在Angular 2中,使用標籤<nav>, <a>(具有屬性「routerLink」)和<router-outlet>,我能夠以動態方式顯示一個組件,這個組件被我之前進入的組件包圍(例如)切換到執行此操作。在Angular 2中更改整個視圖

我的瀏覽器還會顯示一個鏈接,響應我在應用程序模塊中的Routes數組中聲明的路徑。

但是我怎樣才能生成例如一個按鈕,它將帶給我一個完全不同的視圖(用不同的組件編寫),它可能與它所來的視圖沒有共同之處?

謝謝。

+0

這就是'router-outlet'的用途 - 路由到完全不同的視圖。你可以添加你的代碼嗎?聽起來你可能對這裏的組件架構有誤解 – Kai

+0

我認爲你目前缺乏一些角度基礎知識。我強烈建議您至少檢查angular.io頁面中的教程 –

回答

2

Angular路由器會爲你做。你只需要正確設置你的路由和路由器插座。

這裏是什麼,我想問有關圖片:

enter image description here

所以您的應用程序組件將有一個路由器的出口而已。然後,您可以路由到任何組件以佔用整個頁面。

然後,您可以定義一個「主要組件」,其中包含您希望在所有其他頁面上顯示的頁眉和頁腳以及其他元素。該組件還有一個路由器插座。

如果您希望某個頁面在沒有任何頁眉或頁腳的情況下顯示,並且您路由到應用組件的路由器插座。

如果您希望頁面與頁眉和頁腳一起出現,您可以路由到主要組件的路由器插座。

+0

正如其他人所建議的,您可能想要了解更多關於路由的內容,請參閱教程:angular.io或者我有一個關於路由的Pluralsight課程: https://app.pluralsight.com/library/courses/angular-routing/table-of-contents – DeborahK