Angular如何构建模块

时间:2019-10-11 07:17:16

标签: angular module

例如,我们有一个shared模块,其中包含一堆输入组件,这些输入组件在我的应用程序中得到了广泛使用。

在我拥有的共享模块下

input.component.ts checkbox.component.ts datepicker.component.ts 等。

所以可以说我有另一个page组件,属于它自己的page模块,我想在其中插入上面的一个组件。为此,我必须导入整个shared模块,对吗?

无论是导入整个shared模块,还是只需要十几个组件,或者在每个低级组件中都有一个独立的模块,在性能方面是否存在差异?所以我只能导入所需的确切组件。

我很好奇Angular如何处理它,谢谢。

2 个答案:

答案 0 :(得分:0)

根据角度库的工作量(例如,角度材料,角度本身),我认为Angular将所有模块代码都包含在包中。这就是为什么您有需要时导入不同模块的原因,而不仅仅是导出所有模块的大模块。

所以是的,从捆绑包的大小来看,每个共享组件最好有一个模块。当然,在我看来,这太过分了:我们谈论的Kb在大多数应用中都无济于事。

最好的建议是根据语义和您的直觉:我想说的是,首先使用带有所有共享组件的共享模块,然后,如果您觉得某些组件之间相互关联性很强(例如表单输入)并且没有在所有地方使用,请在此时创建一​​个模块。

答案 1 :(得分:0)

您可以加载整个模块,但是您可以指定要在另一个模块中使用的确切组件,例如需要制作一个index.ts文件,然后从共享模块中导出确切的组件:

export * from './components/check-box/check-box.component';