是否可以将子组件依赖项注入到父组件中?

时间:2018-11-27 11:35:07

标签: java android dagger-2 dagger

考虑到我有以下对象图:

  • 名为AppComponent的组件的范围为@AppScope(相当于@Singleton
  • 名为SessionComponent的子组件的范围为@SessionScope,它是AppComponent的子组件

SessionComponent依赖项是在每个会话开始时创建(注入)的。

是否可以将@SessionScope依赖性(在SessionComponent提供)注入@AppScope依赖性(在AppComponent提供)?

反之亦然,如Component文档中所述:

  

关联两个组件的最简单方法是声明一个Subcomponent。子组件的行为与组件完全相同,但是其实现是在父组件或子组件中生成的。这种关系允许子组件实现在声明时从其父级继承绑定图

我发现以编程方式可以使用this approach,但仅使用Dagger API可以吗?

1 个答案:

答案 0 :(得分:1)

不,您不能:

  

安装到组件中的绑定无法从其子组件中看到绑定。取而代之的是相反的方式:子组件中的绑定可以依赖于父组件中的绑定。

如您在链接中answer中所述。