koin
koin copied to clipboard
Support androidx SavedStateHandle for kotlin multiplatform
Describe the bug org.koin.core.error.NoBeanDefFoundException: No definition found for type 'androidx.lifecycle.SavedStateHandle'.
Koin module and version:
[e.g]: koin-compose-viewmodel:1.2.0-Beta4
Snippet or Sample project to help reproduce
// commonMain
class RegisterViewModel(
private val savedStateHandle: SavedStateHandle,
...
) : ViewModel() {
}
// commonMain
@OptIn(KoinExperimentalAPI::class)
@Composable
@NonRestartableComposable
fun RegisterScreen() {
ScreenContent(
viewModel = koinViewModel<RegisterViewModel>()
)
}
// commonMain
expect val viewModelModule: Module
// androidMain
actual val viewModelModule: Module = module {
viewModelOf(::RegisterViewModel)
}
// iosMain
actual val viewModelModule: Module = module {
factoryOf(::RegisterViewModel)
}