Skip to content
0

katanakit-js / useCreateDebouncedSignal

Function: useCreateDebouncedSignal() ​

ts
function useCreateDebouncedSignal<T>(initialValue, delayMs?): [SignalGetter<T>, SignalSetter<T> & {
  useCancel: () => void;
}];

Defined in: src/core/services/reactive.service.ts:256

Creates a signal whose setter debounces writes by delayMs milliseconds. Useful for search inputs or any value that triggers expensive work.

Type Parameters ​

Type ParameterDescription
TThe signal value type.

Parameters ​

ParameterTypeDefault valueDescription
initialValueTundefinedThe initial value.
delayMsnumber300Debounce delay in milliseconds (defaults to 300).

Returns ​

[SignalGetter<T>, SignalSetter<T> & { useCancel: () => void; }]

A tuple of [getter, debouncedSetter]. The setter exposes a useCancel() method to abort a pending write.

Example ​

ts
const [query, setQuery] = useCreateDebouncedSignal("", 250);
setQuery("hello"); // won't update until 250ms of quiet
setQuery.useCancel(); // abort pending write

Released under the MIT License.