kliping.pro
  • Docs
  • Explore
  • Builder
  • Directory
  • Colors
  • Typeset
Saved
Hooks
  • Getting Started2
  • State7
  • useBoolean
  • useControllableValue
  • useCounter
  • useDebounce
  • useResetState
  • useThrottle
  • useToggle
  • Advanced6
  • Lifecycle16
  • Browser21
  • Development1
  • Third-Party4
  • Libraries4
  1. Hooks
  2. State
  3. useCounter

useCounter

PreviousNext

Pencacah dengan aksi yang menyebut maksudnya.

Sebuah ref dan empat fungsi biasa — tidak lebih.

Sengaja tanpa min/max. Pembatasan yang dibutuhkan hampir selalu punya aturannya sendiri: ada yang menjepit, ada yang berputar, ada yang menolak. Satu pasang opsi tidak pernah cukup untuk ketiganya, dan menuliskannya di tempat pemakaian jauh lebih jelas daripada menebak-nebak di sini.

Installation ​

pnpm dlx kliping@latest add use-counter

Tanpa dependensi — tidak ada berkas lain yang ikut terpasang.

Salin kode berikut ke project Anda.

ts
import { ref, toValue } from 'vue'
import type { MaybeRefOrGetter } from 'vue'

export function useCounter(initialValue: MaybeRefOrGetter<number> = 0) {
  const initial = toValue(initialValue)
  const count = ref(initial)

  const set = (value: number | ((current: number) => number)) => {
    count.value = typeof value === 'function' ? value(count.value) : value
  }

  return {
    /** The current count. Reactive. */
    count,
    /** Sets the count, or updates it from the current one. */
    set,
    /** Adds 1. */
    inc: () => {
      count.value += 1
    },
    /** Subtracts 1. */
    dec: () => {
      count.value -= 1
    },
    /** Restores the initial count. */
    reset: () => {
      count.value = initial
    },
  }
}

Requirements ​

RequirementValue
ProjectVue 3.5+, alias @ — disiapkan kliping init
Filescomposables/use-counter.ts

API Reference ​

ts
export function useCounter(initialValue: MaybeRefOrGetter<number> = 0)

Parameters ​

ParameterTypeDefaultDescription
initialValue?MaybeRefOrGetter<number>0Starting count; read once. Default: 0.

Returns ​

PropertyTypeDescription
countRef<number, number>The current count. Reactive.
set(value: number | ((current: number) => number)) => voidSets the count, or updates it from the current one.
inc() => voidAdds 1.
dec() => voidSubtracts 1.
reset() => voidRestores the initial count.

Credits ​

Berasal dari shadcn-hooks (MIT, Copyright (c) 2025 Brendan Dash). Rantai lengkapnya di Credits.

PrevioususeControllableValueNext useDebounce

On This Page

InstallationRequirementsAPI ReferenceParametersReturnsCredits

© 2026 Kliping. Free components are open source under the MIT License.

LicenseCreditsRoadmap