useMemoized<T> function

T useMemoized<T>(
  1. T creator(), [
  2. void disposer(
    1. T state
    )?
])

Memoizes a value and optionally calls a disposer when unmounted.

Similar to useMemoized, but allows you to provide a custom disposer function that will be called when the widget is unmounted or during hot reload.

Example:

setup(context, props) {
  final controller = useMemoized(
    () => TextEditingController(text: 'Hello'),
    () => controller.dispose(),
  );

  return () => TextField(controller: controller);
}

Implementation

T useMemoized<T>(T Function() creator, [void Function(T state)? disposer]) {
  return useHook(DisposableHook(creator, disposer));
}