Angular 5:如果应用程序具有延迟加载功能,则应将页眉、页脚和侧边栏组件放置在核心模块或共享文件夹中?

Que*_*est 5 typescript angular angular5

我有一个 Angular5 应用程序,其结构如下: 在此输入图像描述

页眉、页脚和侧边栏组件放置在Shared --> Components下。Header 和 SideBar 组件导入服务SideBarService(在 Shared 文件夹下)。当用户单击 Header 组件中的侧边栏图标时,SidebarService 用于切换应用于侧边栏组件的类。

我的问题是:根据 Angular 5 应用程序架构,页眉、页脚和侧边栏应该放置在共享模块还是核心模块中。由于我的应用程序具有延迟加载模块,因此将来是否会导致问题,例如如果一个延迟加载模块(例如管理员使用侧边栏服务在侧边栏中进行更改),此更改对其他延迟加载模块是否可见?

Dam*_*ith 1

我认为你最好将它们放在核心模块中,因为我们只会加载它一次。所有其他模块将在路由器插座内加载。您可以在其中放置任何共享组件,例如ConfirmBox、AlertBox之类的小部件。无论如何,我们正在从服务访问这些组件。

无论如何,核心模块不应该依赖于其他模块,并且其他模块可以依赖于核心模块。