Files
Road_roller/.claude/skills/vueuse-functions/references/useTimeout.md
2026-09-17 08:52:53 +08:00

1.4 KiB

category
category
Animation

useTimeout

Update value after a given time with controls.

Usage

import { useTimeout } from '@vueuse/core'

const ready = useTimeout(1000)
import { useTimeout } from '@vueuse/core'
// ---cut---
const { ready, start, stop } = useTimeout(1000, { controls: true })
import { promiseTimeout } from '@vueuse/core'

console.log(ready.value) // false

await promiseTimeout(1200)

console.log(ready.value) // true

Type Declarations

export interface UseTimeoutOptions<Controls extends boolean>
  extends UseTimeoutFnOptions {
  /**
   * Expose more controls
   *
   * @default false
   */
  controls?: Controls
  /**
   * Callback on timeout
   */
  callback?: Fn
}
export type UseTimeoutReturn =
  | ComputedRef<boolean>
  | ({
      readonly ready: ComputedRef<boolean>
    } & Stoppable)
/**
 * @deprecated use UseTimeoutReturn instead
 */
export type UseTimoutReturn = UseTimeoutReturn
/**
 * Update value after a given time with controls.
 *
 * @see   {@link https://vueuse.org/useTimeout}
 * @param interval
 * @param options
 */
export declare function useTimeout(
  interval?: MaybeRefOrGetter<number>,
  options?: UseTimeoutOptions<false>,
): ComputedRef<boolean>
export declare function useTimeout(
  interval: MaybeRefOrGetter<number>,
  options: UseTimeoutOptions<true>,
): {
  ready: ComputedRef<boolean>
} & Stoppable