an_lifecycle_hooks
library
Functions
-
useLifecycle()
→ Lifecycle
-
使用lifecycle相关
调用多次时 返回同一个
-
useLifecycleAndViewModelEffect<VM extends ViewModel>({VM? data, VM factory()?, VM factory2(Lifecycle lifecycle)?, LifecycleEffectTask<VM>? launchOnFirstCreate, LifecycleEffectTask<VM>? launchOnFirstStart, LifecycleEffectTask<VM>? launchOnFirstResume, LifecycleEffectTask<VM>? launchOnDestroy, LifecycleEffectTask<VM>? repeatOnStarted, LifecycleEffectTask<VM>? repeatOnResumed, ViewModelProvider viewModelProviderProducer(LifecycleOwner lifecycleOwner)?})
→ VM
-
对于 ViewModel 在当前生命周期事件中执行
取当前 环境中唯一的 ViewModel 对象 与 其他的 hook 中的 use 不同
注意 lifecycle 不一定是管理 ViewModel 的 Lifecycle
-
useLifecycleEffect<T extends Object>({T? data, T factory()?, T factory2(Lifecycle lifecycle)?, LifecycleEffectTask<T>? launchOnFirstCreate, LifecycleEffectTask<T>? launchOnFirstStart, LifecycleEffectTask<T>? launchOnFirstResume, LifecycleEffectTask<T>? launchOnDestroy, LifecycleEffectTask<T>? repeatOnStarted, LifecycleEffectTask<T>? repeatOnResumed, Object? key})
→ T
-
对于某个对象及其 Type 在生命周期事件中执行
取当前 lifecycle 环境中 Type 唯一的对象 与 其他的 hook 中的 use不同
调用多次时 返回同一个(第一次创建的那一个)
将会抬高 改对象的引用 直到 lifecycle 的销毁时
-
useLifecycleRegistry()
→ ILifecycleRegistry
-
使用lifecycleRegistry相关
调用多次时 返回同一个
-
useLifecycleViewModelEffect<VM extends ViewModel>({VM? data, VM factory()?, VM factory2(Lifecycle lifecycle)?, LifecycleEffectTask<VM>? launchOnFirstCreate, LifecycleEffectTask<VM>? launchOnFirstStart, LifecycleEffectTask<VM>? launchOnFirstResume, LifecycleEffectTask<VM>? launchOnDestroy, LifecycleEffectTask<VM>? repeatOnStarted, LifecycleEffectTask<VM>? repeatOnResumed, ViewModelProvider viewModelProvider(Lifecycle)?, ViewModelProvider viewModelProvider2(LifecycleOwner lifecycleOwner)?})
→ VM
-
对于 ViewModel 在当前生命周期事件中执行
取当前 环境中唯一的 ViewModel 对象 与 其他的 hook 中的 use 不同
注意 lifecycle 不一定是管理 ViewModel 的 Lifecycle