# rememberHiltViewModelFactory

## Functions summary

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory` | `@https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/hilt/lifecycle/viewmodel/compose/rememberHiltViewModelFactory.composable#rememberHiltViewModelFactory(androidx.lifecycle.ViewModelProvider.Factory)( delegateFactory: https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory )` Remembers a `https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory` that allows the creation of [HiltViewModel](https://dagger.dev/api/latest/dagger/hilt/android/lifecycle/HiltViewModel) -annotated `ViewModel` instances within Compose. |

## Functions

### rememberHiltViewModelFactory

Artifact: [androidx.hilt:hilt-lifecycle-viewmodel-compose](https://developer.android.com/jetpack/androidx/releases/hilt) [View Source](https://cs.android.com/search?q=file:androidx/hilt/lifecycle/viewmodel/compose/HiltViewModel.kt+function:rememberHiltViewModelFactory) Added in [1.4.0](https://developer.android.com/jetpack/androidx/releases/hilt#1.4.0)

```
@Composable
fun rememberHiltViewModelFactory(
    delegateFactory: ViewModelProvider.Factory = LocalViewModelStoreOwner.current.defaultViewModelProviderFactory
): ViewModelProvider.Factory
```

Remembers a `https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory` that allows the creation of [HiltViewModel](https://dagger.dev/api/latest/dagger/hilt/android/lifecycle/HiltViewModel) -annotated `ViewModel` instances within Compose.

This factory is bound to the `https://developer.android.com/reference/kotlin/androidx/compose/ui/platform/package-summary#LocalContext()`, which should normally be an `@AndroidEntryPoint`-annotated component (like a `ComponentActivity`).

You can pass this factory to `viewModel(factory)`, `rememberViewModelStoreOwner(defaultFactory)` or other state-holders that require a factory to properly inject Hilt dependencies into your ViewModels.

| Parameters |
|---|---|
| `delegateFactory: https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory = LocalViewModelStoreOwner.current.defaultViewModelProviderFactory` | A fallback `https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory` used to instantiate ViewModels that are not annotated with `https://dagger.dev/api/latest/dagger/hilt/android/lifecycle/HiltViewModel.html`. Defaults to the default factory of the current `https://developer.android.com/reference/kotlin/androidx/lifecycle/viewmodel/compose/LocalViewModelStoreOwner`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory` | A remembered `https://developer.android.com/reference/kotlin/androidx/lifecycle/ViewModelProvider.Factory` for Hilt-injected ViewModels. |