在Koin中相当于Dagger的@Name是什么?

时间:2018-09-11 08:59:02

标签: kotlin koin

我正在将应用程序从Dagger2迁移到Koin,需要在dagger的下面进行转换

@Provides
@Singleton
@Named("refresh")
fun provideRefreshRetrofit(@Named("refresh") okHttpClient: OkHttpClient, gson: Gson): Retrofit {/*...not important...*/}

现在为止:

single<Retrofit> { /*....*/ }

但是我需要在同一模块中有相似的条目。是一种转换/解决/解决方法吗?

1 个答案:

答案 0 :(得分:1)

请参见docs。您可以给定义起个名字

single(name="refresh") { Retrofit.Builder().build() }

并使用它

factory { ClassThatDependsOnRefresh(get("refresh")) } 

这里仅以single和factory为例。