我正在开发一个使用 Angular 7 的项目,我为我构建的应用程序的各个模块提供了各种角度库,然后在(私有)npm 上发布以供应用程序使用。所以所有的 Angular 库都是通过它们的 npm 包导入到应用程序中的。
我面临的问题是我现在有 2 个相互导入的模块,因为它们需要显示来自另一个模块的组件。我不能将上述组件移到其他地方,因为它们依赖于自己模块中的服务和其他组件。
为了让它更清楚一点,我会给你一个我的情况的例子。
我已经有一个SharedModule
带有一些在其他模块中使用的独立组件,然后我也有一个用于每个 API 服务的模块。所以我有一个UsersModule
'AdministrationModule' 等。我的问题是PlantModule
and FleetModule
。
- 像发电厂一样的工厂
- 舰队作为一组工厂和/或其他舰队,但也有自己的属性
PlantModule
有一个用于植物列表的组件(如发电厂而不是有机植物)和一个用于植物详细信息的组件。在详细信息组件中还有其他外部组件,例如显示分配给它的所有用户以及车队。
FleetsModule
还有一个用于车队列表的组件和一个用于详细信息的组件。在此详细组件中,还有外部组件,例如分配的用户、子车队列表和属于车队一部分的工厂列表。
我想做的是让可重用的组件在其他模块中使用,这样我就不需要在任何地方复制粘贴所有的 API 服务、组件等。
关于我做错了什么或如何解决它的任何想法?
更新
为了解决它,我更改了需要这些组件的“页面”的结构。因此,我没有在库中的其他组件中导入可重用组件,而是在主应用程序中创建一个包装器视图并导入我需要的所有内容。