Skip to content
Reactivity

useDebounced

Debounce an Observable value. Creates a read-only Observable that updates only after the source value stops changing for the specified delay.

Debounced input

Type to see the debounced value update after 500ms of inactivity.

Source
—
Debounced (500ms)
—
import {
import useDebounced
useDebounced
,
import useObservable
useObservable
} from "@usels/web";
function
function Component(): void
Component
() {
const
const source$: any
source$
=
import useObservable
useObservable
("hello");
const
const debounced$: any
debounced$
=
import useDebounced
useDebounced
(
const source$: any
source$
, {
ms: number
ms
: 300 });
// debounced$.get() updates 300ms after source$ stops changing
}
import { useDebounced, useObservable } from "@usels/web";
function Component() {
const source$ = useObservable(0);
const debounced$ = useDebounced(source$, { ms: 300, maxWait: 1000 });
// Forces update every 1000ms even with continuous source changes
}
ParameterTypeDescription
source$Observable<T>Source Observable to debounce.
optionsDebouncedOptions (optional)Debounce configuration (ms, maxWait).
OptionTypeDefaultDescription
msnumber200Debounce delay in milliseconds.
maxWaitMaybeObservable<number | undefined>-Maximum time in milliseconds to wait before forcing invocation, regardless of how frequently the debounced function is called. Accepts a plain number or an Observable<number>.

ReadonlyObservable<T>

A ReadonlyObservable that reflects the debounced source value.

View on GitHub