Skip to content

useCounter

Category
Export Size
247 B
Last Changed
4 weeks ago

Basic counter with utility functions.

Demo

Count: 0

Basic Usage

js
import { useCounter } from '@vueuse/core'

const { count, inc, dec, set, reset } = useCounter()

Usage with options

js
import { useCounter } from '@vueuse/core'

const { count, inc, dec, set, reset } = useCounter(1, { min: 0, max: 16 })

Type Declarations

typescript
export interface UseCounterOptions {
  min?: number
  max?: number
}
/**
 * Basic counter with utility functions.
 *
 * @see https://vueuse.org/useCounter
 * @param [initialValue]
 * @param options
 */
export declare function useCounter(
  initialValue?: MaybeRef<number>,
  options?: UseCounterOptions,
): {
  count:
    | Ref<number, number>
    | ShallowRef<number, number>
    | WritableComputedRef<number, number>
  inc: (delta?: number) => number
  dec: (delta?: number) => number
  get: () => number
  set: (val: number) => number
  reset: (val?: number) => number
}

Source

SourceDemoDocs

Contributors

Anthony Fu
IlyaL
Anthony Fu
Tycho
leewakin
Rock070
iChengbo
Damien Roche
Alex Kozack

Changelog

v12.8.0 on
7432f - feat(types): deprecate MaybeRef and MaybeRefOrGetter in favor of Vue's native (#4636)
v12.0.0-beta.1 on
0a9ed - feat!: drop Vue 2 support, optimize bundles and clean up (#4349)
v10.8.0 on
cf29c - fix: allow delta to be negative (#3650)
v10.3.0 on
6ae3a - feat: initialValue support ref (#3266)

Released under the MIT License.