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

Typedefs

LHookWidget = HookWidget
LifecycleEffectTask<T> = FutureOr Function(Lifecycle lifecycle, T data)
LifecycleHook = _LifecycleRegistryHook
LStatefulHookWidget = StatefulHookWidget