2016-11-25 60 views
21

我不太搞清楚,为什么Angular2有两个conceps:Angular2:模块和组件的区别

  1. 模块
  2. 组件

这是他们应该是之间的区别他们扮演的角色是什么?:

  • 什么时候需要创建一个SubModule?
  • 我什么时候需要创建一个SubComponent?
+1

https://angular.io/docs/ts/latest/cookbook/ngmodule-faq.html – Manish

回答

22

模块和组件几乎没有什么共同之处,除了它们是装饰器的类并且提供者可以使用它们进行注册。

组件是

模块引入分裂你的懒加载应用程序的可选行为(事件处理程序)应用程序的可见部分。

  • 子模块通常是一组服务,组件,指令和管道是共同建设一个可重复使用的功能。 通过将模块添加到另一个模块的imports: [...],其所有内容都可供导入模块使用。

  • 子组件在Angular2中并不是真正的术语。只有组件。一个特殊的组件是根组件。不同之处在于根组件是通过引导Angular2应用程序来创建的,而创建其他组件是因为它们的选择器在另一个组件的视图中匹配HTML。

因此,除根组件外,所有组件都是子组件。

1

基本上模块和组件都是不同的术语。

怎么样?

模块 in角度设置组件,服务,过滤器或其他一些较小的模块,或者我们可以说你在哪里导入所有这些以便稍后在应用程序中使用以备将来使用。在单个应用程序中可能存在一个或多个模块。

组件是单层或视图来执行某些操作等组件可以根据需要lazzy加载。

+1

我认为模块可以通过“loadChildren”进行延迟加载,但是普通组件需要成为该模块的一部分以便延迟加载 –

+0

是的,以及说@本杰明你是对的。 –

相关问题