问题描述
我需要访问 coreModule 内的 sharedModule=>random.component... 目前,我遇到循环依赖错误。我应该继续尝试这样做还是本质上是错误的?
这是我当前的应用程序结构
app.module.ts
-> 导入:core.module.ts
core.module.ts
-> 导入:shared.module.ts(我认为这会导致循环依赖
shared.module.ts
-
它由任何需要的功能模块导入
-
app.module.ts 也导入它
-
core 正在导入它,因为它保存了我的 log.service.ts
-
可以从shared
预测核心中还有其他需要的东西
shared.module.ts ===> log.service.ts
- 这是共享的,因为它不是单例
- 尝试删除核心中的共享导入并简单地在核心组件中导入 log.service 但现在核心不会
如果 core 导入 shared 是错误的。 core 如何访问共享
中的内容解决方法
由于 shared
模块导入 main
模块但仅用于其中一个服务,因此将该服务设为单独的模块。这样做将允许您在任何地方导入该特定模块(服务)。
您不应该在 coreModule 中导入 sharedModule,这与整个目的相矛盾。 CoreModule 是您加载在整个应用程序中使用的组件/模块/提供者等的地方,这应该只导入到 appModule 中。 SharedModule 用于您的 featureModule。
同时在您的应用程序中搜索 (Ctrl+F) CoreModule,也许您也在其他地方导入它。