Skip to content

useTimeoutPoll

Category
Export Size
414 B
Last Changed
9 months ago

Use timeout to poll something. It will trigger callback after last task is done.

Demo

Count: 5
isActive: true

Usage

ts
import { 
useTimeoutPoll
} from '@vueuse/core'
const
count
=
ref
(0)
async function
fetchData
() {
await new
Promise
(
resolve
=>
setTimeout
(
resolve
, 1000))
count
.
value
++
} // Only trigger after last fetch is done const {
isActive
,
pause
,
resume
} =
useTimeoutPoll
(
fetchData
, 1000)

Type Declarations

ts
export interface UseTimeoutPollOptions {
  /**
   * Start the timer immediately
   *
   * @default true
   */
  
immediate
?: boolean
/** * Execute the callback immediately after calling `resume` * * @default false */
immediateCallback
?: boolean
} export declare function
useTimeoutPoll
(
fn
: () =>
Awaitable
<void>,
interval
:
MaybeRefOrGetter
<number>,
options
?:
UseTimeoutFnOptions
,
):
Pausable

Source

SourceDemoDocs

Contributors

Anthony Fu
Anthony Fu
IlyaL
Robin
Hongkun
OrbisK
Sebastien
David Vallejo
jiadesen
sun0day
Jelf
Wenlu Wang

Changelog

v12.8.0 on
7432f - feat(types): deprecate MaybeRef and MaybeRefOrGetter in favor of Vue's native (#4636)
v12.6.0 on
64c53 - feat(useTimtoutFn,useTimeoutPoll): align behavior (#4543)
v12.3.0 on
a5fb0 - fix: only start by default at client
0450d - fix: immediate default value should be true (#4232)
v12.0.0-beta.1 on
0a9ed - feat!: drop Vue 2 support, optimize bundles and clean up (#4349)
v10.2.1 on
7a897 - fix: unexpected immediate execution (#3159)
v10.0.0-beta.4 on
4d757 - feat(types)!: rename MaybeComputedRef to MaybeRefOrGetter

Released under the MIT License.

CYBER MONDAY
Get 60% OFF + 3 Premium Bonuses
2 AI Courses + Vue Certification
Claim Now
10
hours
:
49
minutes
:
47
seconds
: