Open CK110 opened 7 years ago
在AppModule 中provider:[ xxService],我在appComponent 注入使用过一次
我在一个子模块中 再次注入使用(无论我有没有在子模块中再次使用provider声明),我发现这个xxService 的构造函数是不会再执行的。
是不是服务就是单例?子模块再次声明也不会有什么影响
这个很难一言两语说清。 简单理解:模块是树形结构的(有上下级关系),如果在上层模块实例化(定义在Providers中,则表明会实例化)了的模块,下层的模块只需要引用,不会实例化。
如果在子模块中的providers中也定义了,那么就会重新实例化。但注意,这个重新实例化代表有两个实例,而不是覆盖上层的那个实例。
在AppModule 中provider:[ xxService],我在appComponent 注入使用过一次
我在一个子模块中 再次注入使用(无论我有没有在子模块中再次使用provider声明),我发现这个xxService 的构造函数是不会再执行的。
是不是服务就是单例?子模块再次声明也不会有什么影响