InvoctionTargetException при использовании Koin для внедрения зависимостейAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 InvoctionTargetException при использовании Koin для внедрения зависимостей

Сообщение Anonymous »

Я работаю над проектом Android с использованием Jetpack Compose и хочу иметь доступ к своей модели представления с помощью кода, который я приведу ниже, но когда я пытаюсь сделать это с помощью getNavViewModel, я сталкиваюсь со слишком большим количеством ошибок, особенно InvoctionTargetException
может кто-нибудь мне помочь, пожалуйста?

Код: Выделить всё

val viewModel= getNavViewModel(
parameters = {
parametersOf(
NetworkChecker(context).isInternetConnected
)
}
)
это мой код для моей модели представления

Код: Выделить всё

class MainViewModel(
private val productRepository: ProductRepository,
isInternetConnected: Boolean
) : ViewModel() {
val dataProduct = mutableStateOf(listOf())
val showProgressBar = mutableStateOf(false)

init {
refreshAllDataFromNet(isInternetConnected)
}
fun refreshAllDataFromNet(isInternetConnected: Boolean) {
viewModelScope.launch {
if (isInternetConnected) {
showProgressBar.value = true
}

val newDataProducts = async {
productRepository.getProducts(isInternetConnected)
}

updateData(newDataProducts.await())

showProgressBar.value = false
}
}
private fun updateData(products: List) {
dataProduct.value = products
}
}
это мой модуль

Код: Выделить всё

val myModules = module {
single { androidContext().getSharedPreferences("data", Context.MODE_PRIVATE) }
single { createApiService() }

single
 { ProductRepositoryImpl(get()) }

viewModel { (isNetConnected: Boolean) -> MainViewModel(get(), isNetConnected) }
}
Я пытался использовать отладку, чтобы понять, в чем конкретная проблема, но все равно это не сработало.


Подробнее здесь: https://stackoverflow.com/questions/784 ... -injection
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»