0

假设我们有一个很大NgModule的 the SharedModule,它导出了多个组件中需要的很多组件。通过将其SharedModule导入功能模块通常会产生开销,因为所有共享组件都会被导入,而不仅仅是那些必要的。拆分会SharedModule减少构建/编译时间吗?除了可读性更好的代码之外,将其拆分成更小的模块还有什么好处吗?

非常感谢你的帮助!

4

2 回答 2

2

从官方网站angular.io

在一个包含几个组件的简单应用程序中,根模块就是您所需要的。随着应用程序的增长,您将根模块重构为代表相关功能集合的功能模块。然后将这些模块导入根模块。

划定应用程序的区域有助于开发人员和团队之间的协作、分离指令以及管理根模块的大小。与核心 Angular API 的概念相反,功能模块是一种组织最佳实践。

减少构建/编译时间没有任何意义,所以我认为这是有道理的

对于具有大量路由的大型应用程序,请考虑延迟加载——一种根据需要加载 NgModules 的设计模式。

于 2019-07-09T08:55:24.000 回答
1

您可以实现延迟加载,这将减少您的应用程序加载时间 将功能拆分为模块将减少应用程序加载时间您可以实现延迟加载,您的应用程序将按需加载客户端,就像您有 5 个模块一样,然后用户想使用第 5 个模块这个唯一的模块将加载到客户端。其他 4 个模块将不会被加载。浏览器首先在客户端下载您的应用程序然后提取。您的 5 模块大小为 5MB,然后在延迟加载后您的应用程序大小将在不同的块中。模块大小将根据功能而定。

我不确定模块化方法后编译时间是否会减少。但是您的应用程序加载时间肯定会减少,这很重要,

您的代码将得到很好的管理和可读性。将根据角度最佳实践

模块化方法将降低代码的复杂性

大模块不是好方法。 如果您正在开发大型应用程序,您迟早必须将您的应用程序移动到模块化,否则维护或应用程序加载时间将不容易解决

于 2019-07-09T07:59:16.280 回答