Angular8 实战(二十)模块的划分

本章学习模块的划分

先来看一下模块中的“坑”

导入其它模块时,需要知道使用该模块的目的

  • 如果是组件,那么需要在每一个需要的模块都进行导入
  • 如果是服务,那么一般来说在根模块中导入一次即可

需要在每个需要的模块中进行导入

  • CommonModule:提供绑定、ngIf和ngFor等基础指令,基本上每个模块都需要导入它。
  • FormsModule / ReactiveFormsModule:表单模块需要在每个需要的模块导入
  • 提供组件、指令或管道的模块

只在根模块导入一次的

  • HttpClientModule / BrowserAnimationsModule / NoopAnimationsModule
  • 只提供服务的模块

如何有效的组织模块

20-1.png

共享模块(SharedModule)

=两个模块需要使用同一个组件、指令、管道,那么在SharedModule导入、导出此组件、指令、管道。这样其它模块只需导入SharedModule即可

根模块
导入系统级需要的服务

模块及路由
模块由组件、指令、管道、服务等构成,每个模块也会对应一个路由模块(路由后期会详细讲解),同时还有一个根路由模块。这样划分的好处是:实现懒加载,提高系统渲染性能

接下来,示例一下功能模块的划分:首页、推荐、分类、聊天、个人中心、产品
创建模块的命令

ng g m [模块名] --routing
20-2.gif

这样所有的模块都创建完成,而且每个模块有自己独立的目录。

你可能感兴趣的:(Angular8 实战(二十)模块的划分)