我不太清楚,为什么Angular2有两个概念?
模块
组件
他们之间有什么区别,他们将扮演什么角色?
答案 0 :(得分:23)
模块和组件几乎没有任何共同点,除了它们是带有装饰器的类,提供者可以在它们注册。
组件是应用程序的可见部分,具有可选行为(事件处理程序)
引入了模块来拆分延迟加载的应用程序。
SubModule 通常是一组服务,组件,指令和管道,它们共同构建了可重用的功能。
通过向另一个模块的imports: [...]
添加模块,其所有内容都可供导入模块使用。
SubComponent 在Angular2中实际上不是一个术语。只有组件。一个特殊组件是根组件。不同之处在于root组件是通过引导Angular2应用程序创建的,而其他组件是因为它们的选择器在另一个组件的视图中与HTML匹配而创建的。
因此,除根组件外,所有组件都是子组件。
答案 1 :(得分:2)
基本上模块和组件都是不同的术语。
如何?
Angular中的模块也是组件,服务,过滤器或其他一些较小模块的集合,或者我们可以说您导入所有这些模块的位置,以便稍后在应用程序中使用以供将来使用。在单个应用程序中,可能存在一个或多个模块。
组件是单层或视图以执行某些操作等。组件可以根据需要延迟加载。