本章學習模塊的劃分
先來看一下模塊中的“坑”
導入其它模塊時,需要知道使用該模塊的目的
- 如果是組件,那么需要在每一個需要的模塊都進行導入
- 如果是服務,那么一般來說在根模塊中導入一次即可
需要在每個需要的模塊中進行導入
- CommonModule:提供綁定、ngIf和ngFor等基礎指令,基本上每個模塊都需要導入它。
- FormsModule / ReactiveFormsModule:表單模塊需要在每個需要的模塊導入
- 提供組件、指令或管道的模塊
只在根模塊導入一次的
- HttpClientModule / BrowserAnimationsModule / NoopAnimationsModule
- 只提供服務的模塊
如何有效的組織模塊
20-1.png
共享模塊(SharedModule)
=兩個模塊需要使用同一個組件、指令、管道,那么在SharedModule導入、導出此組件、指令、管道。這樣其它模塊只需導入SharedModule即可
根模塊
導入系統級需要的服務
模塊及路由
模塊由組件、指令、管道、服務等構成,每個模塊也會對應一個路由模塊(路由后期會詳細講解),同時還有一個根路由模塊。這樣劃分的好處是:實現懶加載,提高系統渲染性能
接下來,示例一下功能模塊的劃分:首頁、推薦、分類、聊天、個人中心、產品
創建模塊的命令
ng g m [模塊名] --routing
20-2.gif
這樣所有的模塊都創建完成,而且每個模塊有自己獨立的目錄。