有两个班:
通过这样的实现:
class A {
val b : B = B()
}
class B问题
是否可以为b创建一个绑定,以在普通类中隐藏有关b源的冗余信息?
Kodein宣言:
override val kodein by Kodein.lazy {
bind<A>() with singleton { A() }
bind<B>() with "a.b some impl???"
}Usecase
class Usecase(kodein : Kodein){
val b : B = kodein.instance()
}发布于 2017-11-16 13:19:01
非常简单:
bind<B>() with provider { instance<A>().b }provider绑定是最简单的绑定:它每次都会调用提供的函数。函数本身运行在Kodein上下文中,因此使用了instance函数。
https://stackoverflow.com/questions/47297002
复制相似问题