【发布时间】:2019-05-07 08:34:37
【问题描述】:
考虑以下注入器:
class Injector constructor(secretSauce: SecretSauce) {
val kodein = Kodein {
bind<SpicyBeans>() with factory { beans: List<Bean>, herbs: List<Herb> ->
SpicyBeans(secretSauce, beans, herbs)
}
}
}
还有如下业务逻辑:
class TastyMeal {
private lateinit var injector : Kodein
private lateinit var spicyBeans : SpicyBeans
fun initialiseWithInjector(kodein : Kodein) {
injector = kodein
val herbs = listOf(Coriander(), Cumin())
val beans = listOf(Pinto(), BlackEyed())
// fetch SpicyBeans via given Kodein Factory, given herbs and beans here
}
}
如何使用 Kodein 的直接注入功能使用工厂获取 SpicyBeans 实例,传入 List<Herb> 和 List<Bean> TastyMeal 实例化之后?我在文档中找不到示例。
【问题讨论】:
标签: kotlin dependency-injection kodein