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