NgModule与组件

时间:2016-10-04 20:38:24

标签: angular

所以我现在正在学习angular2并阅读关于模块的ngbook2。 模块包含组件,但也可以使用其公共组件导入不同的模块。

问题是:模块组件的范围是什么(在这个意义范围内,作为应用程序的一部分,而不是内部变量的范围)。模块是整个应用程序还是只是某个部分,比如包含其组件的标题?

典型使用的惯例是什么?

2 个答案:

答案 0 :(得分:31)

一种常见的方法是将模块视为一个独特的功能实现,可以包含零个或多个服务,组件,指令以及用于实现该功能的管道和导入模块。

模块可以定义其导出的内容,以供导入者使用。

应用程序可以包含一个或多个模块,其中根模块导入零个或多个模块,其中每个导入的模块可以导入零个或多个模块。

模块也可用于 - 将应用程序拆分为可以延迟加载的部分 - 在不同的应用程序中重用 - 为选择器创建命名范围。

组件是用户界面的可重用可视构建块,用HTML呈现,带有事件处理程序,以响应用户操作和模型数据更改。

答案 1 :(得分:5)

在一个完整的应用程序中,可以有一个主模块。 但是您的应用程序可以分为多个模块,可以注入主模块。 我们假设您有一个包含电影,预告片,歌曲等的大型应用程序库。 您提供了主应用程序模块名称' MyApp'。 但是你进一步将你的应用分为多个组成部分。

  • MovieComponent
  • SongComponent(进一步分为AudioComponent和VideoComponent)
  • TrailerComponent

所有这些组件都单独开发和测试,并集成到我们的MyAppModule中。

如果我们的预告片部分发生任何事情,我们可以丢弃/测试我们的预告片组件。

因此很容易维护大型应用程序。

我希望这会帮助你理解。任何最受欢迎的建议