簡體   English   中英

在Angular 2中,私有組件(未導出的組件)的用途是什么

[英]In Angular 2, what is the use of private components (components not exported)

我知道通過導出組件,模塊可以使它們可用於導入該組件的任何模塊。 但是我只是想知道什么是“有用的”場景,其中這些組件不導出(或保存為私有/本地),而是在其父模塊中聲明。

在Angular(以及其他形式的)開發中,有一種稱為延遲加載的方法。 這樣的想法是,每條路線或路線系列將是它們自己的模塊,並且所有組件都在模塊中聲明。 您不會導出組件。

而是在哪里配置應用程序路由,而不是為路由傳遞組件,而是導入為該路由創建的模塊的子級。

但是,可能需要在不同的路線之間共享某些資產。 也許那將是某種模式,或者是導航欄。 這些組件將包含在通常稱為SharedModule的模塊中,並且將從該模塊中導出。 然后將SharedModule作為導入添加,然后為路由創建的隔離模塊將可以訪問那些共享組件(以及可能的管道)。

我希望能對如何/為什么使用模塊,導入模塊,導出組件以及不使用的原因有一個不錯的了解。 如果您有興趣了解我的意思,可以深入了解此代碼庫 ,尤其是查看用於路由到模塊src/app/shared/shared.module.ts的文件src/app/app-routing.module.ts src/app/shared/shared.module.ts用於導出組件的src/app/shared/shared.module.ts以及不用於導出組件的src/app/home/home.module.ts ,它將向您展示如何引入SharedModule但不從該模塊導出任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM