我有一个非常奇怪的情况。
我有一个名为Test1
的服务类,该服务类具有一个实例变量public account = new Subject();
,然后将该类注入into 2 different components
,但是那些组件是parent-child
。现在,发生的事情是first的组件代码将某些内容更改为该实例变量(Test1's account
)。事实证明,一旦发生此更改,就会订阅另一个组件,并且当发生更改时,就会发生订阅,这使我想到了以下问题。
问题1)服务类被注入2个组件中,假设它首先注入了compA,然后我认为在compB中,它是从缓存中注入的,并且两个组件都具有相同的类。
问题2)当注入构造函数时,角度缓存依赖吗?
问题3)谁的工作是缓存依赖项?是我们在模块中使用的提供者的对象吗?
答案 0 :(得分:1)
Instance
,具体取决于提供服务的级别。您可以在模块和组件中提供服务。如果在两个组件都位于其中且没有其他位置的模块中提供该组件,则两者将具有相同的实例。如果只是在父组件中提供,则它们将再次具有相同的实例。如果两个组件中都提供了它,那么将有不同的实例。cache
这个词对我来说似乎不正确,是的。)