以下是文件情况
AppService
AppModule
AModule
AComponent
BModule
BComponent
关于Service
,我知道如果我将Service
注入两个分量,则angular将生成2个不同的服务对象,服务数据无法共享。如果我在名为Service
的AppModule
中插入Singleton Pattern
,该服务将共享数据。
但是,如果在Service
和Amodule
中注入BModule
怎么办?我认为结果与在组件中注入相同。但是事实是Singleton Pattern
。
为什么? Service
被注入到两个不同的模块中,我想角度应在2个模块中生成2个服务对象。谁能帮我弄清楚呢?谢谢。
[StackBlitz链接为angular-service-inject-modules
我创建了一个演示,该演示将输出随机数以检查服务是否为Singleton Pattern
当您在模块中提供服务并再次将其重新导入时,该服务在整个应用程序中都可用。您可以通过注释掉moduleB的providers = [AppService]
并查看与以前相同的结果来验证这一点。