与范围或命名限定符共享的Dagger 2实例

时间:2019-03-27 21:32:29

标签: dagger-2

我正在建立对象图的过程中遇到以下情况。我在这里提供了一个简化的类树作为示例。

  • 食谱
    • 苹果派
      • 成分
        • 苹果
        • 结皮
      • 说明
        • 结皮
        • 苹果
    • 苹果酱
      • 成分
        • 苹果
        • Jar
      • 说明
        • Jar

我遇到的问题是找出用匕首构造此结构的最佳方法。本质上,在每个成分类中,我需要每种成分的实例都相同。但是,我不希望在每个配方之间共享Apple实例。

我尝试了命名限定词,但是最终变得非常丑陋,非常快。必须为每个Apple创建一个Provides方法以为其命名,似乎很麻烦。

此外,我尝试了一种解决方案,其中创建了一个子组件,该子组件将具有获取Apple的方法。然后,我将在打算制作我的配料的SubComponent中为该组件创建一个有范围的@provides方法。

我的问题是,通常执行此任务的最佳方法是什么?

0 个答案:

没有答案