所以我现在正在学习angular2并阅读关于模块的ngbook2。 模块包含组件,但也可以使用其公共组件导入不同的模块。
问题是:模块组件的范围是什么(在这个意义范围内,作为应用程序的一部分,而不是内部变量的范围)。模块是整个应用程序还是只是某个部分,比如包含其组件的标题?
典型使用的惯例是什么?
答案 0 :(得分:31)
一种常见的方法是将模块视为一个独特的功能实现,可以包含零个或多个服务,组件,指令以及用于实现该功能的管道和导入模块。
模块可以定义其导出的内容,以供导入者使用。
应用程序可以包含一个或多个模块,其中根模块导入零个或多个模块,其中每个导入的模块可以导入零个或多个模块。
模块也可用于 - 将应用程序拆分为可以延迟加载的部分 - 在不同的应用程序中重用 - 为选择器创建命名范围。
组件是用户界面的可重用可视构建块,用HTML呈现,带有事件处理程序,以响应用户操作和模型数据更改。
答案 1 :(得分:5)
在一个完整的应用程序中,可以有一个主模块。 但是您的应用程序可以分为多个模块,可以注入主模块。 我们假设您有一个包含电影,预告片,歌曲等的大型应用程序库。 您提供了主应用程序模块名称' MyApp'。 但是你进一步将你的应用分为多个组成部分。
所有这些组件都单独开发和测试,并集成到我们的MyAppModule中。
如果我们的预告片部分发生任何事情,我们可以丢弃/测试我们的预告片组件。
因此很容易维护大型应用程序。
我希望这会帮助你理解。任何最受欢迎的建议