Update 03. Koin.md

This commit is contained in:
Igor Avdonin
2023-06-21 20:29:03 +03:00
parent e4b3c60e2d
commit 42f7c55691
+9 -5
View File
@@ -206,10 +206,10 @@ class MyApplication : Application() {
1. Отлично, граф создан! Достать его поможет конструкция `by inject`:
```kotlin
import org.koin.core.component.inject
import org.koin.android.ext.android.inject
class MusicActivity: AppCompatActivity() {
private val repository by inject()
private val repository: MusicRepository by inject()
...
}
@@ -228,7 +228,7 @@ Koin предоставляет функцию `inject` во всех Android-к
```kotlin
import org.koin.core.component.KoinComponent
import org.koin.core.component.inject
import org.koin.android.ext.android.inject
object SomeSingleton: KoinComponent {
@@ -242,7 +242,7 @@ object SomeSingleton: KoinComponent {
```kotlin
import org.koin.core.component.KoinComponent
import org.koin.core.component.inject
import org.koin.android.ext.android.inject
object SomeSingleton: KoinComponent {
@@ -284,7 +284,7 @@ val repositoryModule = module {
2. А вот в `MusicActivity` запрашиваем интерфейс `MusicRepository`:
```kotlin
import org.koin.core.component.inject
import org.koin.android.ext.android.inject
class MusicActivity: AppCompatActivity() {
private val repository: MusicRepository by inject()
@@ -372,6 +372,8 @@ val viewModelModule = module {
3. И для получения уже потребуется не `inject`, а `viewModel`:
```kotlin
import org.koin.androidx.viewmodel.ext.android.viewModel
class MusicActivity: AppCompatActivity() {
private val viewModel: MusicViewModel by viewModel()
@@ -450,6 +452,7 @@ val viewModelModule = module {
```kotlin
import org.koin.core.parameter.parametersOf
import org.koin.androidx.viewmodel.ext.android.viewModel
class MusicActivity: AppCompatActivity() {
@@ -467,6 +470,7 @@ class MusicActivity: AppCompatActivity() {
```kotlin
import org.koin.core.parameter.parametersOf
import org.koin.androidx.viewmodel.ext.android.viewModel
class MusicActivity: AppCompatActivity() {