【发布时间】:2021-06-21 13:33:36
【问题描述】:
当从 Koin 3.0.2 迁移到 3.1 时,我们注意到我们不能再这样做了
loadKoinModules(module { single(override = true) { serviceMock } })
既然删除了“覆盖”参数,那么在新版本中解决此问题的方法是什么?
【问题讨论】:
当从 Koin 3.0.2 迁移到 3.1 时,我们注意到我们不能再这样做了
loadKoinModules(module { single(override = true) { serviceMock } })
既然删除了“覆盖”参数,那么在新版本中解决此问题的方法是什么?
【问题讨论】:
因为 Koin 3.1 覆盖是默认设置。具有相同映射的最后一个模块将覆盖前一个。
val myModuleA = module {
single<Service> { ServiceImp() }
}
val myModuleB = module {
single<Service> { TestServiceImp() }
}
startKoin {
// TestServiceImp will override ServiceImp definition
modules(myModuleA,myModuleB)
}
【讨论】: