Category | Watch |
---|---|
Export Size | 786 B |
Last Changed | 2 weeks ago |
Alias | debouncedWatch |
Debounced watch
Similar to watch
, but offering extra options debounce
and maxWait
which will be applied to the callback function.
import { watchDebounced } from '@vueuse/core' watchDebounced( source, () => { console.log('changed!') }, { debounce: 500, maxWait: 1000 }, )
It's essentially a shorthand for the following code:
import { debounceFilter, watchWithFilter } from '@vueuse/core' watchWithFilter( source, () => { console.log('changed!') }, { eventFilter: debounceFilter(500, { maxWait: 1000 }), }, )
export interface WatchDebouncedOptions<Immediate> extends WatchOptions<Immediate>, DebounceFilterOptions { debounce?: MaybeRefOrGetter<number> } export declare function watchDebounced< T extends Readonly<WatchSource<unknown>[]>, Immediate extends Readonly<boolean> = false >( sources: [...T], cb: WatchCallback<MapSources<T>, MapOldSources<T, Immediate>>, options?: WatchDebouncedOptions<Immediate> ): WatchStopHandle export declare function watchDebounced< T, Immediate extends Readonly<boolean> = false >( source: WatchSource<T>, cb: WatchCallback<T, Immediate extends true ? T | undefined : T>, options?: WatchDebouncedOptions<Immediate> ): WatchStopHandle export declare function watchDebounced< T extends object, Immediate extends Readonly<boolean> = false >( source: T, cb: WatchCallback<T, Immediate extends true ? T | undefined : T>, options?: WatchDebouncedOptions<Immediate> ): WatchStopHandle export { watchDebounced as debouncedWatch }
© 2019-present Anthony Fu
Licensed under the MIT License.
https://vueuse.org/shared/watchDebounced/