Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions docs/overview/modules.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# 模块

模块是一个用 `@Module()` 装饰器注解的类。该装饰器提供了 **Nest** 用于高效组织和管理应用结构的元数据
模块是一个用 `@Module()` 装饰器注解的类。该装饰器提供了元数据,Nest 使用它来有效地组织和管理应用程序结构

<figure><img class="illustrative-image" src="/assets/Modules_1.png" /></figure>

每个 Nest 应用至少有一个模块,即**根模块** ,它作为 Nest 构建**应用图**的起点。这个图是 Nest 用于解析模块与提供者之间关系和依赖的内部结构。虽然小型应用可能仅有一个根模块,但通常情况并非如此。我们**强烈建议**使用模块作为组织组件的有效方式。对于大多数应用,你可能会拥有多个模块,每个模块封装一组紧密相关的**功能**
每个 Nest 应用程序至少有一个模块,即 **根模块** ,它是 Nest 构建**应用程序图**的起点。该图是一种内部结构,Nest 利用它来解决模块和提供程序(提供者)之间的关系和依赖性问题。虽然小型应用程序可能只有一个根模块,但一般情况并非如此。强烈推荐使用模块作为组织组件的有效方式。对于大多数应用程序,您可能会拥有多个模块,每个模块都封装了一组密切相关的功能

`@Module()` 装饰器接收一个包含模块描述属性的对象
`@Module()` 装饰器接收一个带有描述模块属性的对象

| | |
| ----------- | --------------------------------------------------------------------------------------------------------------- |
| providers | 将由 Nest 注入器实例化且至少可在本模块内共享的提供者 |
| providers | 将由 Nest 注入器实例化,且至少可在本模块内共享的提供者 |
| controllers | 本模块中定义的需要实例化的控制器集合 |
| imports | 导入模块的列表,这些模块导出了本模块所需的提供者 |
| exports | 本模块提供的 providers 子集,这些提供者应可供导入本模块的其他模块使用。可以使用提供者本身或其令牌(provide 值) |
Expand Down