옵션
집 Skill 웹 개발 vueuse-functions

vueuse-functions

antfu/skills antfu/skills

요구 사항을 가장 적합한 VueUse 컴포저블에 매핑하고, 간결하고 유지보수가 용이한 Vue.js/Nuxt 기능을 구현하기 위해 올바른 사용 패턴을 적용하십시오.

...모든 것을 확장하십시오
1
업데이트 된 시간 2026년 9월 12일

VueUse 함수

이 스킬은 Vue.js/Nuxt 프로젝트에서 VueUse 컴포저블을 활용하기 위한 결정 및 구현 가이드입니다. 요구 사항을 가장 적합한 VueUse 함수와 매칭하고, 올바른 사용 패턴을 적용하며, 맞춤형 코드보다는 컴포저블 기반의 솔루션을 우선적으로 사용하여 구현을 간결하고, 유지보수하기 쉬우며, 성능이 우수하게 유지되도록 합니다.

적용 시점

  • Vue.js/Nuxt 환경에서 사용자의 개발 작업을 지원할 때마다 이 기법을 적용하십시오.
  • 항상 먼저 VueUse 함수로 해당 요구 사항을 구현할 수 있는지 확인하십시오.
  • 가독성, 유지 관리성 및 성능을 향상시키기 위해 사용자 정의 코드보다 VueUse 컴포저블을 우선적으로 사용하십시오.
  • 요구 사항을 가장 적절한 VueUse 함수에 매핑하고 해당 함수의 호출 규칙을 따르십시오.
  • 아래 함수 표의 Invocation 아래 함수 표의 필드를 참조하십시오. 예시:
    • AUTO: 적용 가능한 경우 자동으로 사용하십시오.
    • EXTERNAL: 사용자가 필요한 외부 종속성을 이미 설치한 경우에만 사용하십시오. 그렇지 않은 경우 재고하여, 정말로 필요한 경우에만 설치를 요청하십시오.
    • EXPLICIT_ONLY: 사용자가 명시적으로 요청한 경우에만 사용하십시오.

      참고: 프롬프트에 포함된 사용자 지침이나 AGENTS.md 함수의 기본 Invocation 규칙보다 우선할 수 있습니다.

함수

아래에 나열된 모든 함수는 VueUse 라이브러리의 일부이며, 각 섹션은 기능에 따라 함수를 분류합니다.

중요: 각 함수 항목에는 간략한 Description 및 상세 Reference가 포함되어 있습니다. 함수를 사용할 때는 항상 ./references 해당 문서를 참조하여 사용법 세부 사항과 타입 선언을 확인하십시오.

상태

함수 설명 호출
createGlobalState Vue 인스턴스 전반에서 재사용할 수 있도록 상태를 전역 범위에 유지하십시오. AUTO
createInjectionState 컴포넌트에 주입할 수 있는 전역 상태를 생성합니다. AUTO
createSharedComposable 여러 Vue 인스턴스에서 사용할 수 있는 컴포저블 함수를 만듭니다 AUTO
injectLocal 확장 inject 다음 기능을 추가하여 provideLocal 동일한 컴포넌트 내에서 값을 제공할 수 있도록 AUTO
provideLocal 확장 provide 호출 기능 추가 injectLocal 호출 기능 포함 AUTO
useAsyncState 반응형 비동기 상태 AUTO
useDebouncedRefHistory 다음의 약어 useRefHistory 바운스 제거 필터가 적용된 AUTO
useLastChanged 마지막 변경 시점의 타임스탬프를 기록합니다 AUTO
useLocalStorage 반응형 LocalStorage AUTO
useManualRefHistory 사용자가 다음을 호출할 때 ref의 변경 내역을 수동으로 추적합니다. commit() AUTO
useRefHistory ref의 변경 내역을 추적합니다. AUTO
useSessionStorage 반응형 SessionStorage AUTO
useStorage LocalStorage 또는 SessionStorage에 접근하고 수정하는 데 사용할 수 있는 반응형 ref 생성하기 AUTO
useStorageAsync 비동기 처리를 지원하는 반응형 스토리지 AUTO
useThrottledRefHistory 다음의 약식 표기법 useRefHistory 스로틀링 필터 적용 AUTO

요소

기능 설명 호출
useActiveElement 반응형 document.activeElement AUTO
useDocumentVisibility 반응형 추적 document.visibilityState 자동
useDraggable 요소를 드래그 가능하게 만들기 자동
useDropZone 파일을 드롭할 수 있는 영역 생성 자동
useElementBounding HTML 요소의 반응형 바운딩 박스 AUTO
useElementSize HTML 요소의 반응형 크기 AUTO
useElementVisibility 뷰포트 내 요소의 표시 여부를 추적합니다 AUTO
useIntersectionObserver 대상 요소의 표시 상태 변경을 감지합니다 AUTO
useMouseInElement 요소와 관련된 반응형 마우스 위치 AUTO
useMutationObserver DOM 트리에 가해지는 변경 사항을 감시합니다. AUTO
useParentElement 지정된 요소의 상위 요소를 가져옵니다. AUTO
useResizeObserver 요소의 콘텐츠 크기 또는 border-box에 대한 변경 사항을 보고합니다. AUTO
useWindowFocus 다음과 같이 창 포커스를 반응적으로 추적합니다. window.onfocuswindow.onblur 이벤트를 사용하여 창 포커스를 반응적으로 추적합니다. AUTO
useWindowScroll 반응형 창 스크롤 AUTO
useWindowSize 반응형 창 크기 자동

브라우저

기능 설명 호출
useBluetooth 반응형 웹 블루투스 API AUTO
useBreakpoints 반응형 뷰포트 브레이크포인트 AUTO
useBroadcastChannel 리액티브 BroadcastChannel API 자동
useBrowserLocation 반응형 브라우저 위치 AUTO
useClipboard 반응형 클립보드 API AUTO
useClipboardItems 반응형 클립보드 API AUTO
useColorMode 자동 데이터 지속 기능을 갖춘 반응형 색상 모드(다크 / 라이트 / 사용자 지정) AUTO
useCssSupports SSR 호환 및 반응형 CSS.supports AUTO
useCssVar CSS 변수 조작 AUTO
useDark 데이터 자동 저장 기능이 포함된 반응형 다크 모드 AUTO
useEventListener EventListener를 손쉽게 사용하기 AUTO
useEyeDropper 반응형 EyeDropper API AUTO
useFavicon 반응형 파비콘 AUTO
useFileDialog 손쉽게 파일 대화 상자 열기 AUTO
useFileSystemAccess FileSystemAccessAPI를 사용하여 로컬 파일 생성, 읽기 및 쓰기 수행하기 AUTO
useFullscreen 반응형 전체 화면 API AUTO
useGamepad Gamepad API에 대한 반응형 바인딩을 제공합니다 AUTO
useImage 브라우저에서 이미지를 반응형으로 불러옵니다 AUTO
useMediaControls 다음 두 가지 모두에 대한 반응형 미디어 컨트롤 audiovideo 요소 모두에 대한 반응형 미디어 컨트롤 AUTO
useMediaQuery 반응형 미디어 쿼리 AUTO
useMemory 반응형 메모리 정보 AUTO
useObjectUrl 객체를 나타내는 반응형 URL AUTO
usePerformanceObserver 성능 지표 관찰 AUTO
usePermission 반응형 권한 API AUTO
usePreferredColorScheme Reactive의 prefers-color-scheme 미디어 쿼리 AUTO
usePreferredContrast Reactive prefers-contrast 미디어 쿼리 AUTO
usePreferredDark 반응형 다크 테마 기본 설정 AUTO
usePreferredLanguages Reactive Navigator 언어 AUTO
usePreferredReducedMotion Reactive prefers-reduced-motion 미디어 쿼리 자동
usePreferredReducedTransparency Reactive prefers-reduced-transparency 미디어 쿼리 AUTO
useScreenOrientation 반응형 화면 방향 API AUTO
useScreenSafeArea Reactive env(safe-area-inset-*) AUTO
useScriptTag 스크립트 태그를 생성합니다 AUTO
useShare 반응형 웹 공유 API AUTO
useSSRWidth 뷰포트 너비에 의존하는 SSR 컴포넌트를 렌더링할 때 사용될 전역 뷰포트 너비를 설정하는 데 사용됩니다. useMediaQuery 또는 useBreakpoints AUTO
useStyleTag 헤드(head)에 리액티브 style 요소를 head에 삽입 AUTO
useTextareaAutosize 내용에 따라 텍스트 영역의 높이를 자동으로 업데이트 AUTO
useTextDirection 요소 텍스트의 반응형 디렉터리 AUTO
useTitle 문서 제목의 반응형 업데이트 AUTO
useUrlSearchParams 반응형 URLSearchParams AUTO
useVibrate 반응형 진동 API AUTO
useWakeLock Reactive 화면 깨우기 잠금 API AUTO
useWebNotification 반응형 알림 자동
useWebWorker 간편한 웹 워커 등록 및 통신 AUTO
useWebWorkerFn UI를 차단하지 않고 리소스 소모가 큰 함수 실행하기 AUTO

센서

함수 설명 호출
onClickOutside 요소 외부에서 발생하는 클릭을 감지합니다 AUTO
onElementRemoval 해당 요소 또는 이를 포함하는 요소가 DOM에서 제거될 때 발생합니다. AUTO
onKeyStroke 키보드 키 입력을 감지합니다. AUTO
onLongPress 요소를 길게 누르는 동작을 감지합니다. AUTO
onStartTyping 사용자가 편집 불가능한 요소에서 입력을 시작할 때 발생합니다 AUTO
useBattery 반응형 배터리 상태 API AUTO
useDeviceMotion 반응형 DeviceMotionEvent AUTO
useDeviceOrientation 반응형 DeviceOrientationEvent AUTO
useDevicePixelRatio 반응형 추적 window.devicePixelRatio AUTO
useDevicesList 사용 가능한 입력/출력 장치를 나열하는 반응형 enumerateDevices AUTO
useDisplayMedia 반응형 mediaDevices.getDisplayMedia 스트리밍 AUTO
useElementByPoint 반응형 요소별 점별 처리 자동
useElementHover 반응형 요소의 호버 상태 AUTO
useFocus DOM 요소의 포커스 상태를 추적하거나 설정하는 반응형 유틸리티 AUTO
useFocusWithin 요소 또는 그 자손 요소 중 하나가 포커스를 가지고 있는지 추적하는 리액티브 유틸리티 AUTO
useFps 반응형 FPS(초당 프레임 수) AUTO
useGeolocation 반응형 지리적 위치 API AUTO
useIdle 사용자가 비활성 상태인지 여부를 추적합니다. 자동
useInfiniteScroll 요소의 무한 스크롤 AUTO
useKeyModifier 반응형 수정자 상태 AUTO
useMagicKeys 반응형 키 입력 상태 AUTO
useMouse 리액티브 마우스 위치 AUTO
useMousePressed 반응형 마우스 클릭 상태 AUTO
useNavigatorLanguage 반응형 네비게이터 언어 AUTO
useNetwork 반응형 네트워크 상태 AUTO
useOnline 반응형 온라인 상태 AUTO
usePageLeave 마우스가 페이지를 떠나는지 여부를 나타내는 반응형 상태 AUTO
useParallax 파라락스 효과를 손쉽게 생성 AUTO
usePointer 반응형 포인터 상태 AUTO
usePointerLock 반응형 포인터 잠금 자동
usePointerSwipe PointerEvents를 기반으로 한 반응형 스와이프 감지 AUTO
useScroll 반응형 스크롤 위치 및 상태 AUTO
useScrollLock 요소의 스크롤 잠금 AUTO
useSpeechRecognition 반응형 음성 인식 AUTO
useSpeechSynthesis 반응형 음성 합성 AUTO
useSwipe 다음에 기반한 반응형 스와이프 감지 TouchEvents 자동
useTextSelection 다음 기준에 따라 사용자의 텍스트 선택을 반응형으로 추적 Window.getSelection AUTO
useUserMedia 반응형 mediaDevices.getUserMedia 스트리밍 AUTO

네트워크

함수 설명 호출
useEventSource EventSource 또는 Server-Sent-Events 인스턴스가 HTTP 서버에 대한 영구 연결을 엽니다. AUTO
useFetch Reactive Fetch API는 요청을 중단할 수 있는 기능을 제공합니다. AUTO
useWebSocket Reactive WebSocket 클라이언트 AUTO

애니메이션

함수 설명 호출
useAnimate 반응형 웹 애니메이션 API AUTO
useInterval 매 간격마다 증가하는 반응형 카운터 AUTO
useIntervalFn 다음에 대한 래퍼 setInterval 컨트롤이 포함된 AUTO
useNow 반응형 Date 인스턴스 AUTO
useRafFn 매번 함수 호출 requestAnimationFrame AUTO
useTimeout 반응성 값이 true 지정된 시간이 지난 후 AUTO
useTimeoutFn 다음에 대한 래퍼 setTimeout 제어 기능이 포함된 AUTO
useTimestamp 반응성 전류 타임스탬프 AUTO
useTransition 값 간 전환 자동

구성 요소

함수 설명 호출
computedInject 결합 computedinject AUTO
createReusableTemplate 컴포넌트 범위 내에서 템플릿 정의 및 재사용 AUTO
createTemplatePromise 프로미스로서의 템플릿 AUTO
templateRef ref를 템플릿 요소에 바인딩하는 약식 표기법 AUTO
tryOnBeforeMount 안전 onBeforeMount AUTO
tryOnBeforeUnmount 안전 onBeforeUnmount AUTO
tryOnMounted 안전 onMounted AUTO
tryOnScopeDispose 안전 onScopeDispose AUTO
tryOnUnmounted 안전 onUnmounted AUTO
unrefElement Vue ref 또는 컴포넌트 인스턴스에서 기본 DOM 요소를 가져옵니다 AUTO
useCurrentElement 현재 컴포넌트의 DOM 요소를 ref로 가져옵니다. AUTO
useMounted ref에 마운트된 상태 AUTO
useTemplateRefsList 템플릿 요소 및 내부 컴포넌트에 ref를 바인딩하는 약식 표기법 v-for AUTO
useVirtualList 가상 목록을 손쉽게 생성하세요 AUTO
useVModel v-모델 바인딩을 위한 약어 AUTO
useVModels props v-model 바인딩을 위한 약어 AUTO

Watch

함수 설명 호출
until 변경 사항에 대한 일회성 감시 약속 AUTO
watchArray 추가 및 제거가 포함된 배열 감시하기 AUTO
watchAtMost watch 발동 횟수 포함 AUTO
watchDebounced 바운스 제거된 감시 AUTO
watchDeep 값을 감시하는 약어 {deep: true} AUTO
watchIgnorable 무시 가능한 감시 AUTO
watchImmediate 다음과 같이 값을 감시하는 약식 표기법 {immediate: true} AUTO
watchOnce 다음과 같이 값을 감시하는 약식 표기법 { once: true } AUTO
watchPausable 일시 정지 가능한 감시 AUTO
watchThrottled 속도 제한이 적용된 감시 AUTO
watchTriggerable 수동으로 작동시킬 수 있는 시계 AUTO
watchWithFilter watch 추가적인 EventFilter 제어 기능 포함 AUTO
whenever 값이 참(truthy)이 될 때 감시하는 약어 AUTO

반응성

함수 설명 호출
computedAsync 비동기 함수에 대해 계산됨 AUTO
computedEager 지연 평가 없이 즉시 계산됨 AUTO
computedWithControl computed의 종속성을 명시적으로 정의합니다. AUTO
createRef 다음 값을 반환합니다. deepRef 또는 shallowRef 를 반환합니다. deep param AUTO
extendRef Ref에 추가 속성을 추가합니다 AUTO
reactify 일반 함수를 반응형 함수로 변환합니다 AUTO
reactifyObject 적용 reactify 객체에 적용 AUTO
reactiveComputed 계산된 반응형 객체 AUTO
reactiveOmit 반응형 객체에서 필드를 반응적으로 생략 AUTO
reactivePick 반응형 객체에서 필드를 반응적으로 선택하기 AUTO
refAutoReset 일정 시간이 지나면 기본값으로 재설정되는 참조 AUTO
refDebounced ref 값의 실행에 대한 데바운싱 AUTO
refDefault ref에 기본값 적용하기 AUTO
refManualReset 수동 재설정 기능이 있는 ref 생성 AUTO
refThrottled 참조 값 변경 제한 AUTO
refWithControl 참조값 및 그 반응성에 대한 세밀한 제어 AUTO
syncRef 양방향 참조 동기화 AUTO
syncRefs 대상 참조를 소스 참조와 동기화 유지 자동
toReactive 참조를 반응형으로 변환 AUTO
toRef 값/참조/게터를 다음으로 정규화합니다. ref 또는 computed EXPLICIT_ONLY
toRefs 확장 toRefs 또한 객체의 ref를 허용하는 AUTO

배열

함수 설명 호출
useArrayDifference 반응형: 두 배열의 차이를 가져옴 AUTO
useArrayEvery 반응형 Array.every AUTO
useArrayFilter Reactive Array.filter AUTO
useArrayFind 반응형 Array.find AUTO
useArrayFindIndex 반응형 Array.findIndex AUTO
useArrayFindLast 반응형 Array.findLast AUTO
useArrayIncludes 반응형 Array.includes AUTO
useArrayJoin 반응형 Array.join AUTO
useArrayMap 반응형 Array.map AUTO
useArrayReduce 반응형 Array.reduce AUTO
useArraySome 반응형 Array.some AUTO
useArrayUnique 반응형 고유 배열 AUTO
useSorted 반응형 정렬 배열 AUTO

시간

함수 설명 호출
useCountdown 초 단위의 반응형 카운트다운 타이머 AUTO
useDateFormat 전달된 토큰 문자열에 따라 서식이 지정된 날짜를 가져옵니다. AUTO
useTimeAgo 반응형 '지나간 시간' 표시 AUTO
useTimeAgoIntl i18n을 지원하는 ‘Reactive time ago’ 형식 AUTO

유틸리티

함수 설명 호출
createDisposableDirective 일회용 지시문 작성용 유틸리티 AUTO
createEventHook 이벤트 후크를 생성하기 위한 유틸리티 AUTO
createUnrefFn ref 및 raw 값을 인수로 받는 일반 함수 생성 AUTO
get 다음에 액세스하기 위한 약식 표기법 ref.value EXPLICIT_ONLY
isDefined Ref에 대한 nullish가 아닌 검사 타입 가드 AUTO
makeDestructurable 객체와 배열에 대해 동시에 동형 파괴 가능하게 만들기 AUTO
set 다음의 약식 표기법 ref.value = x EXPLICIT_ONLY
useAsyncQueue 각 비동기 작업을 순차적으로 실행하고 현재 작업의 결과를 다음 작업으로 전달합니다. AUTO
useBase64 반응형 base64 변환 AUTO
useCached 사용자 정의 비교기를 사용하여 ref를 캐시합니다. AUTO
useCloned ref의 반응형 복제본 AUTO
useConfirmDialog 모달 및 확인 대화상자 체인을 지원하기 위한 이벤트 훅 생성 AUTO
useCounter 유틸리티 함수가 포함된 기본 카운터 AUTO
useCycleList 항목 목록을 순차적으로 처리합니다 AUTO
useDebounceFn 함수 실행 시 데바운스 처리 AUTO
useEventBus 기본 이벤트 버스 AUTO
useMemoize 인수에 따라 함수 결과를 캐시하고 반응성을 유지하기 AUTO
useOffsetPagination 반응형 오프셋 페이징 AUTO
usePrevious ref의 이전 값을 유지합니다 AUTO
useStepper 다단계 마법사 인터페이스를 구축하기 위한 헬퍼를 제공합니다 AUTO
useSupported SSR 호환성 isSupported AUTO
useThrottleFn 함수 실행 속도 조절 AUTO
useTimeoutPoll 타임아웃을 사용하여 폴링하기 AUTO
useToggle 유틸리티 함수가 포함된 부울 스위처 AUTO
useToNumber 문자열 참조를 반응형 방식으로 숫자로 변환하기 AUTO
useToString 참조를 반응형 방식으로 문자열로 변환 AUTO

@Electron

함수 설명 호출
useIpcRenderer ipcRenderer 및 그 모든 API에 Vue 반응성을 제공합니다 EXTERNAL
useIpcRendererInvoke 반응형 ipcRenderer.invoke API 결과 EXTERNAL
useIpcRendererOn ipcRenderer.on을 간편하게 사용하고, 언마운트 시 ipcRenderer.removeListener가 자동으로 실행됩니다. 외부
useZoomFactor Reactive WebFrame 확대/축소 배율 EXTERNAL
useZoomLevel Reactive WebFrame 확대/축소 레벨 EXTERNAL

@Firebase

함수 설명 호출
useAuth 반응형 Firebase Auth 바인딩 EXTERNAL
useFirestore Reactive Firestore 바인딩 EXTERNAL
useRTDB Reactive Firebase Realtime Database 바인딩 EXTERNAL

@Head

함수 설명 호출
createHead 헤드 매니저 인스턴스를 생성합니다. EXTERNAL
useHead 헤드 메타 태그를 반응형으로 업데이트합니다. EXTERNAL

@Integrations

함수 설명 호출
useAsyncValidator 다음에 대한 래퍼 async-validator EXTERNAL
useAxios 다음에 대한 래퍼 axios EXTERNAL
useChangeCase 다음에 대한 반응형 래퍼 change-case EXTERNAL
useCookies 용 래퍼 universal-cookie EXTERNAL
useDrauu drauu용 반응형 인스턴스 EXTERNAL
useFocusTrap 다음에 대한 리액티브 래퍼 focus-trap EXTERNAL
useFuse Fuse.js의 컴포저블을 사용하여 퍼지 검색을 손쉽게 구현 EXTERNAL
useIDBKeyval 다음에 대한 래퍼 idb-keyval EXTERNAL
useJwt 다음에 대한 래퍼 jwt-decode EXTERNAL
useNProgress 다음에 대한 반응형 래퍼 nprogress EXTERNAL
useQRCode 용 래퍼 qrcode EXTERNAL
useSortable 용 래퍼 sortable EXTERNAL

@Math

함수 설명 호출
createGenericProjection 의 일반 버전 createProjection EXTERNAL
createProjection 한 도메인에서 다른 도메인으로의 반응형 수치 투영 EXTERNAL
logicAnd AND 참조 조건 EXTERNAL
logicNot NOT 참조 조건 EXTERNAL
logicOr OR 참조 조건 EXTERNAL
useAbs 반응형 Math.abs EXTERNAL
useAverage 배열의 평균을 반응형 방식으로 구하기 외부
useCeil 반응형 Math.ceil EXTERNAL
useClamp 값을 다른 두 값 사이에 반응적으로 제한하기 EXTERNAL
useFloor 반응형 Math.floor EXTERNAL
useMath 반응형 Math 메서드 EXTERNAL
useMax 반응형 Math.max EXTERNAL
useMin 반응형 Math.min 외부
usePrecision 숫자의 정밀도를 반응형으로 설정 EXTERNAL
useProjection 한 도메인에서 다른 도메인으로의 반응형 숫자 투영 EXTERNAL
useRound 반응형 Math.round EXTERNAL
useSum 배열의 합을 반응형 방식으로 가져오기 EXTERNAL
useTrunc 반응형 Math.trunc EXTERNAL

@Motion

함수 설명 호출
useElementStyle 반응형 객체를 대상 요소의 CSS 스타일에 동기화합니다. EXTERNAL
useElementTransform 반응형 객체를 대상 요소의 CSS 변환과 동기화합니다. EXTERNAL
useMotion 컴포넌트에 움직임을 더하세요. EXTERNAL
useMotionProperties 대상 요소의 모션 속성에 접근합니다. 외부
useMotionVariants 변형의 상태와 선택을 처리합니다. EXTERNAL
useSpring 스프링 애니메이션. EXTERNAL

@Router

함수 설명 호출
useRouteHash 반응형에 대한 축약형 route.hash EXTERNAL
useRouteParams 반응형에 대한 약어 route.params EXTERNAL
useRouteQuery 반응형에 대한 약식 표기 route.query EXTERNAL

@RxJS

함수 설명 호출
from RxJS의 from()fromEvent() 를 감싸서 refs 외부
toObserver Sugar 함수를 사용하여 ref 를 RxJS Observer로 변환하는 EXTERNAL
useExtractedObservable 하나 이상의 컴포저블에서 추출된 RxJS Observable 하나 이상의 컴포저블에서 추출된 외부
useObservable RxJS 사용 Observable 외부
useSubject RxJS를 Subjectref 값 변경 사항을 양방향으로 전파 EXTERNAL
useSubscription RxJS를 사용하여 Subscription 구독 해지나 메모리 누수 발생에 대한 걱정 없이 사용할 수 있습니다 EXTERNAL
watchExtractedObservable 하나 이상의 컴포저블에서 추출된 Observable 하나 이상의 컴포저블에서 추출된 값을 관찰하세요 EXTERNAL

@SchemaOrg

함수 설명 호출
createSchemaOrg schema.org 관리자 인스턴스를 생성합니다. EXTERNAL
useSchemaOrg 반응형 방식으로 schema.org를 업데이트합니다. EXTERNAL

@Sound

함수 설명 호출
useSound 사운드 효과를 반응형으로 재생합니다. EXTERNAL
GitHub에서 보기
---
name: vueuse-functions
description: Map requirements to the most suitable VueUse composable and apply correct usage patterns for concise, maintainable Vue.js/Nuxt features.
license: MIT
---

# VueUse Functions

This skill is a decision-and-implementation guide for VueUse composables in Vue.js / Nuxt projects. It maps requirements to the most suitable VueUse function, applies the correct usage pattern, and prefers composable-based solutions over bespoke code to keep implementations concise, maintainable, and performant.

## When to Apply

- Apply this skill whenever assisting user development work in Vue.js / Nuxt.
- Always check first whether a VueUse function can implement the requirement.
- Prefer VueUse composables over custom code to improve readability, maintainability, and performance.
- Map requirements to the most appropriate VueUse function and follow the function’s invocation rule.
- Please refer to the `Invocation` field in the below functions table. For example:
  - `AUTO`: Use automatically when applicable.
  - `EXTERNAL`: Use only if the user already installed the required external dependency; otherwise reconsider, and ask to install only if truly needed.
  - `EXPLICIT_ONLY`: Use only when explicitly requested by the user.
  > *NOTE* User instructions in the prompt or `AGENTS.md` may override a function’s default `Invocation` rule.

## Functions

All functions listed below are part of the [VueUse](https://vueuse.org/) library, each section categorizes functions based on their functionality.

IMPORTANT: Each function entry includes a short `Description` and a detailed `Reference`. When using any function, always consult the corresponding document in `./references` for Usage details and Type Declarations.

### State

| Function | Description | Invocation |
|----------|-------------|------------|
| [`createGlobalState`](references/createGlobalState.md) | Keep states in the global scope to be reusable across Vue instances | AUTO |
| [`createInjectionState`](references/createInjectionState.md) | Create global state that can be injected into components | AUTO |
| [`createSharedComposable`](references/createSharedComposable.md) | Make a composable function usable with multiple Vue instances | AUTO |
| [`injectLocal`](references/injectLocal.md) | Extended `inject` with ability to call `provideLocal` to provide the value in the same component | AUTO |
| [`provideLocal`](references/provideLocal.md) | Extended `provide` with ability to call `injectLocal` to obtain the value in the same component | AUTO |
| [`useAsyncState`](references/useAsyncState.md) | Reactive async state | AUTO |
| [`useDebouncedRefHistory`](references/useDebouncedRefHistory.md) | Shorthand for `useRefHistory` with debounced filter | AUTO |
| [`useLastChanged`](references/useLastChanged.md) | Records the timestamp of the last change | AUTO |
| [`useLocalStorage`](references/useLocalStorage.md) | Reactive [LocalStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) | AUTO |
| [`useManualRefHistory`](references/useManualRefHistory.md) | Manually track the change history of a ref when the user calls `commit()` | AUTO |
| [`useRefHistory`](references/useRefHistory.md) | Track the change history of a ref | AUTO |
| [`useSessionStorage`](references/useSessionStorage.md) | Reactive [SessionStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage) | AUTO |
| [`useStorage`](references/useStorage.md) | Create a reactive ref that can be used to access & modify [LocalStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage) or [SessionStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage) | AUTO |
| [`useStorageAsync`](references/useStorageAsync.md) | Reactive Storage with async support | AUTO |
| [`useThrottledRefHistory`](references/useThrottledRefHistory.md) | Shorthand for `useRefHistory` with throttled filter | AUTO |

### Elements

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useActiveElement`](references/useActiveElement.md) | Reactive `document.activeElement` | AUTO |
| [`useDocumentVisibility`](references/useDocumentVisibility.md) | Reactively track [`document.visibilityState`](https://developer.mozilla.org/en-US/docs/Web/API/Document/visibilityState) | AUTO |
| [`useDraggable`](references/useDraggable.md) | Make elements draggable | AUTO |
| [`useDropZone`](references/useDropZone.md) | Create a zone where files can be dropped | AUTO |
| [`useElementBounding`](references/useElementBounding.md) | Reactive [bounding box](https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect) of an HTML element | AUTO |
| [`useElementSize`](references/useElementSize.md) | Reactive size of an HTML element | AUTO |
| [`useElementVisibility`](references/useElementVisibility.md) | Tracks the visibility of an element within the viewport | AUTO |
| [`useIntersectionObserver`](references/useIntersectionObserver.md) | Detects changes to a target element's visibility | AUTO |
| [`useMouseInElement`](references/useMouseInElement.md) | Reactive mouse position related to an element | AUTO |
| [`useMutationObserver`](references/useMutationObserver.md) | Watch for changes being made to the DOM tree | AUTO |
| [`useParentElement`](references/useParentElement.md) | Get parent element of the given element | AUTO |
| [`useResizeObserver`](references/useResizeObserver.md) | Reports changes to the dimensions of an Element's content or the border-box | AUTO |
| [`useWindowFocus`](references/useWindowFocus.md) | Reactively track window focus with `window.onfocus` and `window.onblur` events | AUTO |
| [`useWindowScroll`](references/useWindowScroll.md) | Reactive window scroll | AUTO |
| [`useWindowSize`](references/useWindowSize.md) | Reactive window size | AUTO |

### Browser

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useBluetooth`](references/useBluetooth.md) | Reactive [Web Bluetooth API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API) | AUTO |
| [`useBreakpoints`](references/useBreakpoints.md) | Reactive viewport breakpoints | AUTO |
| [`useBroadcastChannel`](references/useBroadcastChannel.md) | Reactive [BroadcastChannel API](https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel) | AUTO |
| [`useBrowserLocation`](references/useBrowserLocation.md) | Reactive browser location | AUTO |
| [`useClipboard`](references/useClipboard.md) | Reactive [Clipboard API](https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API) | AUTO |
| [`useClipboardItems`](references/useClipboardItems.md) | Reactive [Clipboard API](https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API) | AUTO |
| [`useColorMode`](references/useColorMode.md) | Reactive color mode (dark / light / customs) with auto data persistence | AUTO |
| [`useCssSupports`](references/useCssSupports.md) | SSR compatible and reactive [`CSS.supports`](https://developer.mozilla.org/docs/Web/API/CSS/supports_static) | AUTO |
| [`useCssVar`](references/useCssVar.md) | Manipulate CSS variables | AUTO |
| [`useDark`](references/useDark.md) | Reactive dark mode with auto data persistence | AUTO |
| [`useEventListener`](references/useEventListener.md) | Use EventListener with ease | AUTO |
| [`useEyeDropper`](references/useEyeDropper.md) | Reactive [EyeDropper API](https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper_API) | AUTO |
| [`useFavicon`](references/useFavicon.md) | Reactive favicon | AUTO |
| [`useFileDialog`](references/useFileDialog.md) | Open file dialog with ease | AUTO |
| [`useFileSystemAccess`](references/useFileSystemAccess.md) | Create and read and write local files with [FileSystemAccessAPI](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API) | AUTO |
| [`useFullscreen`](references/useFullscreen.md) | Reactive [Fullscreen API](https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API) | AUTO |
| [`useGamepad`](references/useGamepad.md) | Provides reactive bindings for the [Gamepad API](https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API) | AUTO |
| [`useImage`](references/useImage.md) | Reactive load an image in the browser | AUTO |
| [`useMediaControls`](references/useMediaControls.md) | Reactive media controls for both `audio` and `video` elements | AUTO |
| [`useMediaQuery`](references/useMediaQuery.md) | Reactive [Media Query](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Testing_media_queries) | AUTO |
| [`useMemory`](references/useMemory.md) | Reactive Memory Info | AUTO |
| [`useObjectUrl`](references/useObjectUrl.md) | Reactive URL representing an object | AUTO |
| [`usePerformanceObserver`](references/usePerformanceObserver.md) | Observe performance metrics | AUTO |
| [`usePermission`](references/usePermission.md) | Reactive [Permissions API](https://developer.mozilla.org/en-US/docs/Web/API/Permissions_API) | AUTO |
| [`usePreferredColorScheme`](references/usePreferredColorScheme.md) | Reactive [prefers-color-scheme](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme) media query | AUTO |
| [`usePreferredContrast`](references/usePreferredContrast.md) | Reactive [prefers-contrast](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-contrast) media query | AUTO |
| [`usePreferredDark`](references/usePreferredDark.md) | Reactive dark theme preference | AUTO |
| [`usePreferredLanguages`](references/usePreferredLanguages.md) | Reactive [Navigator Languages](https://developer.mozilla.org/en-US/docs/Web/API/NavigatorLanguage/languages) | AUTO |
| [`usePreferredReducedMotion`](references/usePreferredReducedMotion.md) | Reactive [prefers-reduced-motion](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion) media query | AUTO |
| [`usePreferredReducedTransparency`](references/usePreferredReducedTransparency.md) | Reactive [prefers-reduced-transparency](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-transparency) media query | AUTO |
| [`useScreenOrientation`](references/useScreenOrientation.md) | Reactive [Screen Orientation API](https://developer.mozilla.org/en-US/docs/Web/API/Screen_Orientation_API) | AUTO |
| [`useScreenSafeArea`](references/useScreenSafeArea.md) | Reactive `env(safe-area-inset-*)` | AUTO |
| [`useScriptTag`](references/useScriptTag.md) | Creates a script tag | AUTO |
| [`useShare`](references/useShare.md) | Reactive [Web Share API](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/share) | AUTO |
| [`useSSRWidth`](references/useSSRWidth.md) | Used to set a global viewport width which will be used when rendering SSR components that rely on the viewport width like [`useMediaQuery`](../useMediaQuery/index.md) or [`useBreakpoints`](../useBreakpoints/index.md) | AUTO |
| [`useStyleTag`](references/useStyleTag.md) | Inject reactive `style` element in head | AUTO |
| [`useTextareaAutosize`](references/useTextareaAutosize.md) | Automatically update the height of a textarea depending on the content | AUTO |
| [`useTextDirection`](references/useTextDirection.md) | Reactive [dir](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir) of the element's text | AUTO |
| [`useTitle`](references/useTitle.md) | Reactive document title | AUTO |
| [`useUrlSearchParams`](references/useUrlSearchParams.md) | Reactive [URLSearchParams](https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams) | AUTO |
| [`useVibrate`](references/useVibrate.md) | Reactive [Vibration API](https://developer.mozilla.org/en-US/docs/Web/API/Vibration_API) | AUTO |
| [`useWakeLock`](references/useWakeLock.md) | Reactive [Screen Wake Lock API](https://developer.mozilla.org/en-US/docs/Web/API/Screen_Wake_Lock_API) | AUTO |
| [`useWebNotification`](references/useWebNotification.md) | Reactive [Notification](https://developer.mozilla.org/en-US/docs/Web/API/notification) | AUTO |
| [`useWebWorker`](references/useWebWorker.md) | Simple [Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers) registration and communication | AUTO |
| [`useWebWorkerFn`](references/useWebWorkerFn.md) | Run expensive functions without blocking the UI | AUTO |

### Sensors

| Function | Description | Invocation |
|----------|-------------|------------|
| [`onClickOutside`](references/onClickOutside.md) | Listen for clicks outside of an element | AUTO |
| [`onElementRemoval`](references/onElementRemoval.md) | Fires when the element or any element containing it is removed from the DOM | AUTO |
| [`onKeyStroke`](references/onKeyStroke.md) | Listen for keyboard keystrokes | AUTO |
| [`onLongPress`](references/onLongPress.md) | Listen for a long press on an element | AUTO |
| [`onStartTyping`](references/onStartTyping.md) | Fires when users start typing on non-editable elements | AUTO |
| [`useBattery`](references/useBattery.md) | Reactive [Battery Status API](https://developer.mozilla.org/en-US/docs/Web/API/Battery_Status_API) | AUTO |
| [`useDeviceMotion`](references/useDeviceMotion.md) | Reactive [DeviceMotionEvent](https://developer.mozilla.org/en-US/docs/Web/API/DeviceMotionEvent) | AUTO |
| [`useDeviceOrientation`](references/useDeviceOrientation.md) | Reactive [DeviceOrientationEvent](https://developer.mozilla.org/en-US/docs/Web/API/DeviceOrientationEvent) | AUTO |
| [`useDevicePixelRatio`](references/useDevicePixelRatio.md) | Reactively track [`window.devicePixelRatio`](https://developer.mozilla.org/docs/Web/API/Window/devicePixelRatio) | AUTO |
| [`useDevicesList`](references/useDevicesList.md) | Reactive [enumerateDevices](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/enumerateDevices) listing available input/output devices | AUTO |
| [`useDisplayMedia`](references/useDisplayMedia.md) | Reactive [`mediaDevices.getDisplayMedia`](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getDisplayMedia) streaming | AUTO |
| [`useElementByPoint`](references/useElementByPoint.md) | Reactive element by point | AUTO |
| [`useElementHover`](references/useElementHover.md) | Reactive element's hover state | AUTO |
| [`useFocus`](references/useFocus.md) | Reactive utility to track or set the focus state of a DOM element | AUTO |
| [`useFocusWithin`](references/useFocusWithin.md) | Reactive utility to track if an element or one of its descendants has focus | AUTO |
| [`useFps`](references/useFps.md) | Reactive FPS (frames per second) | AUTO |
| [`useGeolocation`](references/useGeolocation.md) | Reactive [Geolocation API](https://developer.mozilla.org/en-US/docs/Web/API/Geolocation_API) | AUTO |
| [`useIdle`](references/useIdle.md) | Tracks whether the user is being inactive | AUTO |
| [`useInfiniteScroll`](references/useInfiniteScroll.md) | Infinite scrolling of the element | AUTO |
| [`useKeyModifier`](references/useKeyModifier.md) | Reactive [Modifier State](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/getModifierState) | AUTO |
| [`useMagicKeys`](references/useMagicKeys.md) | Reactive keys pressed state | AUTO |
| [`useMouse`](references/useMouse.md) | Reactive mouse position | AUTO |
| [`useMousePressed`](references/useMousePressed.md) | Reactive mouse pressing state | AUTO |
| [`useNavigatorLanguage`](references/useNavigatorLanguage.md) | Reactive [navigator.language](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/language) | AUTO |
| [`useNetwork`](references/useNetwork.md) | Reactive [Network status](https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API) | AUTO |
| [`useOnline`](references/useOnline.md) | Reactive online state | AUTO |
| [`usePageLeave`](references/usePageLeave.md) | Reactive state to show whether the mouse leaves the page | AUTO |
| [`useParallax`](references/useParallax.md) | Create parallax effect easily | AUTO |
| [`usePointer`](references/usePointer.md) | Reactive [pointer state](https://developer.mozilla.org/en-US/docs/Web/API/Pointer_events) | AUTO |
| [`usePointerLock`](references/usePointerLock.md) | Reactive [pointer lock](https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API) | AUTO |
| [`usePointerSwipe`](references/usePointerSwipe.md) | Reactive swipe detection based on [PointerEvents](https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent) | AUTO |
| [`useScroll`](references/useScroll.md) | Reactive scroll position and state | AUTO |
| [`useScrollLock`](references/useScrollLock.md) | Lock scrolling of the element | AUTO |
| [`useSpeechRecognition`](references/useSpeechRecognition.md) | Reactive [SpeechRecognition](https://developer.mozilla.org/en-US/docs/Web/API/SpeechRecognition) | AUTO |
| [`useSpeechSynthesis`](references/useSpeechSynthesis.md) | Reactive [SpeechSynthesis](https://developer.mozilla.org/en-US/docs/Web/API/SpeechSynthesis) | AUTO |
| [`useSwipe`](references/useSwipe.md) | Reactive swipe detection based on [`TouchEvents`](https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent) | AUTO |
| [`useTextSelection`](references/useTextSelection.md) | Reactively track user text selection based on [`Window.getSelection`](https://developer.mozilla.org/en-US/docs/Web/API/Window/getSelection) | AUTO |
| [`useUserMedia`](references/useUserMedia.md) | Reactive [`mediaDevices.getUserMedia`](https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia) streaming | AUTO |

### Network

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useEventSource`](references/useEventSource.md) | An [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) or [Server-Sent-Events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events) instance opens a persistent connection to an HTTP server | AUTO |
| [`useFetch`](references/useFetch.md) | Reactive [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) provides the ability to abort requests | AUTO |
| [`useWebSocket`](references/useWebSocket.md) | Reactive [WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/WebSocket) client | AUTO |

### Animation

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useAnimate`](references/useAnimate.md) | Reactive [Web Animations API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Animations_API) | AUTO |
| [`useInterval`](references/useInterval.md) | Reactive counter that increases on every interval | AUTO |
| [`useIntervalFn`](references/useIntervalFn.md) | Wrapper for `setInterval` with controls | AUTO |
| [`useNow`](references/useNow.md) | Reactive current Date instance | AUTO |
| [`useRafFn`](references/useRafFn.md) | Call function on every `requestAnimationFrame` | AUTO |
| [`useTimeout`](references/useTimeout.md) | Reactive value that becomes `true` after a given time | AUTO |
| [`useTimeoutFn`](references/useTimeoutFn.md) | Wrapper for `setTimeout` with controls | AUTO |
| [`useTimestamp`](references/useTimestamp.md) | Reactive current timestamp | AUTO |
| [`useTransition`](references/useTransition.md) | Transition between values | AUTO |

### Component

| Function | Description | Invocation |
|----------|-------------|------------|
| [`computedInject`](references/computedInject.md) | Combine `computed` and `inject` | AUTO |
| [`createReusableTemplate`](references/createReusableTemplate.md) | Define and reuse template inside the component scope | AUTO |
| [`createTemplatePromise`](references/createTemplatePromise.md) | Template as Promise | AUTO |
| [`templateRef`](references/templateRef.md) | Shorthand for binding ref to template element | AUTO |
| [`tryOnBeforeMount`](references/tryOnBeforeMount.md) | Safe `onBeforeMount` | AUTO |
| [`tryOnBeforeUnmount`](references/tryOnBeforeUnmount.md) | Safe `onBeforeUnmount` | AUTO |
| [`tryOnMounted`](references/tryOnMounted.md) | Safe `onMounted` | AUTO |
| [`tryOnScopeDispose`](references/tryOnScopeDispose.md) | Safe `onScopeDispose` | AUTO |
| [`tryOnUnmounted`](references/tryOnUnmounted.md) | Safe `onUnmounted` | AUTO |
| [`unrefElement`](references/unrefElement.md) | Retrieves the underlying DOM element from a Vue ref or component instance | AUTO |
| [`useCurrentElement`](references/useCurrentElement.md) | Get the DOM element of current component as a ref | AUTO |
| [`useMounted`](references/useMounted.md) | Mounted state in ref | AUTO |
| [`useTemplateRefsList`](references/useTemplateRefsList.md) | Shorthand for binding refs to template elements and components inside `v-for` | AUTO |
| [`useVirtualList`](references/useVirtualList.md) | Create virtual lists with ease | AUTO |
| [`useVModel`](references/useVModel.md) | Shorthand for v-model binding | AUTO |
| [`useVModels`](references/useVModels.md) | Shorthand for props v-model binding | AUTO |

### Watch

| Function | Description | Invocation |
|----------|-------------|------------|
| [`until`](references/until.md) | Promised one-time watch for changes | AUTO |
| [`watchArray`](references/watchArray.md) | Watch for an array with additions and removals | AUTO |
| [`watchAtMost`](references/watchAtMost.md) | `watch` with the number of times triggered | AUTO |
| [`watchDebounced`](references/watchDebounced.md) | Debounced watch | AUTO |
| [`watchDeep`](references/watchDeep.md) | Shorthand for watching value with `{deep: true}` | AUTO |
| [`watchIgnorable`](references/watchIgnorable.md) | Ignorable watch | AUTO |
| [`watchImmediate`](references/watchImmediate.md) | Shorthand for watching value with `{immediate: true}` | AUTO |
| [`watchOnce`](references/watchOnce.md) | Shorthand for watching value with `{ once: true }` | AUTO |
| [`watchPausable`](references/watchPausable.md) | Pausable watch | AUTO |
| [`watchThrottled`](references/watchThrottled.md) | Throttled watch | AUTO |
| [`watchTriggerable`](references/watchTriggerable.md) | Watch that can be triggered manually | AUTO |
| [`watchWithFilter`](references/watchWithFilter.md) | `watch` with additional EventFilter control | AUTO |
| [`whenever`](references/whenever.md) | Shorthand for watching value to be truthy | AUTO |

### Reactivity

| Function | Description | Invocation |
|----------|-------------|------------|
| [`computedAsync`](references/computedAsync.md) | Computed for async functions | AUTO |
| [`computedEager`](references/computedEager.md) | Eager computed without lazy evaluation | AUTO |
| [`computedWithControl`](references/computedWithControl.md) | Explicitly define the dependencies of computed | AUTO |
| [`createRef`](references/createRef.md) | Returns a `deepRef` or `shallowRef` depending on the `deep` param | AUTO |
| [`extendRef`](references/extendRef.md) | Add extra attributes to Ref | AUTO |
| [`reactify`](references/reactify.md) | Converts plain functions into reactive functions | AUTO |
| [`reactifyObject`](references/reactifyObject.md) | Apply `reactify` to an object | AUTO |
| [`reactiveComputed`](references/reactiveComputed.md) | Computed reactive object | AUTO |
| [`reactiveOmit`](references/reactiveOmit.md) | Reactively omit fields from a reactive object | AUTO |
| [`reactivePick`](references/reactivePick.md) | Reactively pick fields from a reactive object | AUTO |
| [`refAutoReset`](references/refAutoReset.md) | A ref which will be reset to the default value after some time | AUTO |
| [`refDebounced`](references/refDebounced.md) | Debounce execution of a ref value | AUTO |
| [`refDefault`](references/refDefault.md) | Apply default value to a ref | AUTO |
| [`refManualReset`](references/refManualReset.md) | Create a ref with manual reset functionality | AUTO |
| [`refThrottled`](references/refThrottled.md) | Throttle changing of a ref value | AUTO |
| [`refWithControl`](references/refWithControl.md) | Fine-grained controls over ref and its reactivity | AUTO |
| [`syncRef`](references/syncRef.md) | Two-way refs synchronization | AUTO |
| [`syncRefs`](references/syncRefs.md) | Keep target refs in sync with a source ref | AUTO |
| [`toReactive`](references/toReactive.md) | Converts ref to reactive | AUTO |
| [`toRef`](references/toRef.md) | Normalize value/ref/getter to `ref` or `computed` | EXPLICIT_ONLY |
| [`toRefs`](references/toRefs.md) | Extended [`toRefs`](https://vuejs.org/api/reactivity-utilities.html#torefs) that also accepts refs of an object | AUTO |

### Array

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useArrayDifference`](references/useArrayDifference.md) | Reactive get array difference of two arrays | AUTO |
| [`useArrayEvery`](references/useArrayEvery.md) | Reactive `Array.every` | AUTO |
| [`useArrayFilter`](references/useArrayFilter.md) | Reactive `Array.filter` | AUTO |
| [`useArrayFind`](references/useArrayFind.md) | Reactive `Array.find` | AUTO |
| [`useArrayFindIndex`](references/useArrayFindIndex.md) | Reactive `Array.findIndex` | AUTO |
| [`useArrayFindLast`](references/useArrayFindLast.md) | Reactive `Array.findLast` | AUTO |
| [`useArrayIncludes`](references/useArrayIncludes.md) | Reactive `Array.includes` | AUTO |
| [`useArrayJoin`](references/useArrayJoin.md) | Reactive `Array.join` | AUTO |
| [`useArrayMap`](references/useArrayMap.md) | Reactive `Array.map` | AUTO |
| [`useArrayReduce`](references/useArrayReduce.md) | Reactive `Array.reduce` | AUTO |
| [`useArraySome`](references/useArraySome.md) | Reactive `Array.some` | AUTO |
| [`useArrayUnique`](references/useArrayUnique.md) | Reactive unique array | AUTO |
| [`useSorted`](references/useSorted.md) | Reactive sort array | AUTO |

### Time

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useCountdown`](references/useCountdown.md) | Reactive countdown timer in seconds | AUTO |
| [`useDateFormat`](references/useDateFormat.md) | Get the formatted date according to the string of tokens passed in | AUTO |
| [`useTimeAgo`](references/useTimeAgo.md) | Reactive time ago | AUTO |
| [`useTimeAgoIntl`](references/useTimeAgoIntl.md) | Reactive time ago with i18n supported | AUTO |

### Utilities

| Function | Description | Invocation |
|----------|-------------|------------|
| [`createDisposableDirective`](references/createDisposableDirective.md) | Utility for authoring disposable directives | AUTO |
| [`createEventHook`](references/createEventHook.md) | Utility for creating event hooks | AUTO |
| [`createUnrefFn`](references/createUnrefFn.md) | Make a plain function accepting ref and raw values as arguments | AUTO |
| [`get`](references/get.md) | Shorthand for accessing `ref.value` | EXPLICIT_ONLY |
| [`isDefined`](references/isDefined.md) | Non-nullish checking type guard for Ref | AUTO |
| [`makeDestructurable`](references/makeDestructurable.md) | Make isomorphic destructurable for object and array at the same time | AUTO |
| [`set`](references/set.md) | Shorthand for `ref.value = x` | EXPLICIT_ONLY |
| [`useAsyncQueue`](references/useAsyncQueue.md) | Executes each asynchronous task sequentially and passes the current task result to the next task | AUTO |
| [`useBase64`](references/useBase64.md) | Reactive base64 transforming | AUTO |
| [`useCached`](references/useCached.md) | Cache a ref with a custom comparator | AUTO |
| [`useCloned`](references/useCloned.md) | Reactive clone of a ref | AUTO |
| [`useConfirmDialog`](references/useConfirmDialog.md) | Creates event hooks to support modals and confirmation dialog chains | AUTO |
| [`useCounter`](references/useCounter.md) | Basic counter with utility functions | AUTO |
| [`useCycleList`](references/useCycleList.md) | Cycle through a list of items | AUTO |
| [`useDebounceFn`](references/useDebounceFn.md) | Debounce execution of a function | AUTO |
| [`useEventBus`](references/useEventBus.md) | A basic event bus | AUTO |
| [`useMemoize`](references/useMemoize.md) | Cache results of functions depending on arguments and keep it reactive | AUTO |
| [`useOffsetPagination`](references/useOffsetPagination.md) | Reactive offset pagination | AUTO |
| [`usePrevious`](references/usePrevious.md) | Holds the previous value of a ref | AUTO |
| [`useStepper`](references/useStepper.md) | Provides helpers for building a multi-step wizard interface | AUTO |
| [`useSupported`](references/useSupported.md) | SSR compatibility `isSupported` | AUTO |
| [`useThrottleFn`](references/useThrottleFn.md) | Throttle execution of a function | AUTO |
| [`useTimeoutPoll`](references/useTimeoutPoll.md) | Use timeout to poll something | AUTO |
| [`useToggle`](references/useToggle.md) | A boolean switcher with utility functions | AUTO |
| [`useToNumber`](references/useToNumber.md) | Reactively convert a string ref to number | AUTO |
| [`useToString`](references/useToString.md) | Reactively convert a ref to string | AUTO |

### @Electron

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useIpcRenderer`](references/useIpcRenderer.md) | Provides [ipcRenderer](https://www.electronjs.org/docs/api/ipc-renderer) and all of its APIs with Vue reactivity | EXTERNAL |
| [`useIpcRendererInvoke`](references/useIpcRendererInvoke.md) | Reactive [ipcRenderer.invoke API](https://www.electronjs.org/docs/api/ipc-renderer#ipcrendererinvokechannel-args) result | EXTERNAL |
| [`useIpcRendererOn`](references/useIpcRendererOn.md) | Use [ipcRenderer.on](https://www.electronjs.org/docs/api/ipc-renderer#ipcrendereronchannel-listener) with ease and [ipcRenderer.removeListener](https://www.electronjs.org/docs/api/ipc-renderer#ipcrendererremovelistenerchannel-listener) automatically on unmounted | EXTERNAL |
| [`useZoomFactor`](references/useZoomFactor.md) | Reactive [WebFrame](https://www.electronjs.org/docs/api/web-frame#webframe) zoom factor | EXTERNAL |
| [`useZoomLevel`](references/useZoomLevel.md) | Reactive [WebFrame](https://www.electronjs.org/docs/api/web-frame#webframe) zoom level | EXTERNAL |

### @Firebase

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useAuth`](references/useAuth.md) | Reactive [Firebase Auth](https://firebase.google.com/docs/auth) binding | EXTERNAL |
| [`useFirestore`](references/useFirestore.md) | Reactive [Firestore](https://firebase.google.com/docs/firestore) binding | EXTERNAL |
| [`useRTDB`](references/useRTDB.md) | Reactive [Firebase Realtime Database](https://firebase.google.com/docs/database) binding | EXTERNAL |

### @Head

| Function | Description | Invocation |
|----------|-------------|------------|
| [`createHead`](https://github.com/vueuse/head#api) | Create the head manager instance. | EXTERNAL |
| [`useHead`](https://github.com/vueuse/head#api) | Update head meta tags reactively. | EXTERNAL |

### @Integrations

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useAsyncValidator`](references/useAsyncValidator.md) | Wrapper for [`async-validator`](https://github.com/yiminghe/async-validator) | EXTERNAL |
| [`useAxios`](references/useAxios.md) | Wrapper for [`axios`](https://github.com/axios/axios) | EXTERNAL |
| [`useChangeCase`](references/useChangeCase.md) | Reactive wrapper for [`change-case`](https://github.com/blakeembrey/change-case) | EXTERNAL |
| [`useCookies`](references/useCookies.md) | Wrapper for [`universal-cookie`](https://www.npmjs.com/package/universal-cookie) | EXTERNAL |
| [`useDrauu`](references/useDrauu.md) | Reactive instance for [drauu](https://github.com/antfu/drauu) | EXTERNAL |
| [`useFocusTrap`](references/useFocusTrap.md) | Reactive wrapper for [`focus-trap`](https://github.com/focus-trap/focus-trap) | EXTERNAL |
| [`useFuse`](references/useFuse.md) | Easily implement fuzzy search using a composable with [Fuse.js](https://github.com/krisk/fuse) | EXTERNAL |
| [`useIDBKeyval`](references/useIDBKeyval.md) | Wrapper for [`idb-keyval`](https://www.npmjs.com/package/idb-keyval) | EXTERNAL |
| [`useJwt`](references/useJwt.md) | Wrapper for [`jwt-decode`](https://github.com/auth0/jwt-decode) | EXTERNAL |
| [`useNProgress`](references/useNProgress.md) | Reactive wrapper for [`nprogress`](https://github.com/rstacruz/nprogress) | EXTERNAL |
| [`useQRCode`](references/useQRCode.md) | Wrapper for [`qrcode`](https://github.com/soldair/node-qrcode) | EXTERNAL |
| [`useSortable`](references/useSortable.md) | Wrapper for [`sortable`](https://github.com/SortableJS/Sortable) | EXTERNAL |

### @Math

| Function | Description | Invocation |
|----------|-------------|------------|
| [`createGenericProjection`](references/createGenericProjection.md) | Generic version of `createProjection` | EXTERNAL |
| [`createProjection`](references/createProjection.md) | Reactive numeric projection from one domain to another | EXTERNAL |
| [`logicAnd`](references/logicAnd.md) | `AND` condition for refs | EXTERNAL |
| [`logicNot`](references/logicNot.md) | `NOT` condition for ref | EXTERNAL |
| [`logicOr`](references/logicOr.md) | `OR` conditions for refs | EXTERNAL |
| [`useAbs`](references/useAbs.md) | Reactive `Math.abs` | EXTERNAL |
| [`useAverage`](references/useAverage.md) | Get the average of an array reactively | EXTERNAL |
| [`useCeil`](references/useCeil.md) | Reactive `Math.ceil` | EXTERNAL |
| [`useClamp`](references/useClamp.md) | Reactively clamp a value between two other values | EXTERNAL |
| [`useFloor`](references/useFloor.md) | Reactive `Math.floor` | EXTERNAL |
| [`useMath`](references/useMath.md) | Reactive `Math` methods | EXTERNAL |
| [`useMax`](references/useMax.md) | Reactive `Math.max` | EXTERNAL |
| [`useMin`](references/useMin.md) | Reactive `Math.min` | EXTERNAL |
| [`usePrecision`](references/usePrecision.md) | Reactively set the precision of a number | EXTERNAL |
| [`useProjection`](references/useProjection.md) | Reactive numeric projection from one domain to another | EXTERNAL |
| [`useRound`](references/useRound.md) | Reactive `Math.round` | EXTERNAL |
| [`useSum`](references/useSum.md) | Get the sum of an array reactively | EXTERNAL |
| [`useTrunc`](references/useTrunc.md) | Reactive `Math.trunc` | EXTERNAL |

### @Motion

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useElementStyle`](https://motion.vueuse.org/api/use-element-style) | Sync a reactive object to a target element CSS styling | EXTERNAL |
| [`useElementTransform`](https://motion.vueuse.org/api/use-element-transform) | Sync a reactive object to a target element CSS transform. | EXTERNAL |
| [`useMotion`](https://motion.vueuse.org/api/use-motion) | Putting your components in motion. | EXTERNAL |
| [`useMotionProperties`](https://motion.vueuse.org/api/use-motion-properties) | Access Motion Properties for a target element. | EXTERNAL |
| [`useMotionVariants`](https://motion.vueuse.org/api/use-motion-variants) | Handle the Variants state and selection. | EXTERNAL |
| [`useSpring`](https://motion.vueuse.org/api/use-spring) | Spring animations. | EXTERNAL |

### @Router

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useRouteHash`](references/useRouteHash.md) | Shorthand for a reactive `route.hash` | EXTERNAL |
| [`useRouteParams`](references/useRouteParams.md) | Shorthand for a reactive `route.params` | EXTERNAL |
| [`useRouteQuery`](references/useRouteQuery.md) | Shorthand for a reactive `route.query` | EXTERNAL |

### @RxJS

| Function | Description | Invocation |
|----------|-------------|------------|
| [`from`](references/from.md) | Wrappers around RxJS's [`from()`](https://rxjs.dev/api/index/function/from) and [`fromEvent()`](https://rxjs.dev/api/index/function/fromEvent) to allow them to accept `ref`s | EXTERNAL |
| [`toObserver`](references/toObserver.md) | Sugar function to convert a `ref` into an RxJS [Observer](https://rxjs.dev/guide/observer) | EXTERNAL |
| [`useExtractedObservable`](references/useExtractedObservable.md) | Use an RxJS [`Observable`](https://rxjs.dev/guide/observable) as extracted from one or more composables | EXTERNAL |
| [`useObservable`](references/useObservable.md) | Use an RxJS [`Observable`](https://rxjs.dev/guide/observable) | EXTERNAL |
| [`useSubject`](references/useSubject.md) | Bind an RxJS [`Subject`](https://rxjs.dev/guide/subject) to a `ref` and propagate value changes both ways | EXTERNAL |
| [`useSubscription`](references/useSubscription.md) | Use an RxJS [`Subscription`](https://rxjs.dev/guide/subscription) without worrying about unsubscribing from it or creating memory leaks | EXTERNAL |
| [`watchExtractedObservable`](references/watchExtractedObservable.md) | Watch the values of an RxJS [`Observable`](https://rxjs.dev/guide/observable) as extracted from one or more composables | EXTERNAL |

### @SchemaOrg

| Function | Description | Invocation |
|----------|-------------|------------|
| [`createSchemaOrg`](https://vue-schema-org.netlify.app/api/core/create-schema-org.html) | Create the schema.org manager instance. | EXTERNAL |
| [`useSchemaOrg`](https://vue-schema-org.netlify.app/api/core/use-schema-org.html) | Update schema.org reactively. | EXTERNAL |

### @Sound

| Function | Description | Invocation |
|----------|-------------|------------|
| [`useSound`](https://github.com/vueuse/sound#examples) | Play sound effects reactively. | EXTERNAL |


모든 파일

0개 파일

vueuse-functions 설치

스킬 파일을 다운로드하여 .claude/skills/ 디렉터리에 압축을 풀어주세요.

ZIP 다운로드

저장소를 클론하고 스킬 파일을 프로젝트에 복사하세요.

git clone https://github.com/antfu/skills/tree/main/skills/vueuse-functions # Copy SKILL.md to your .claude/skills/ directory

복사 복사
빠른 설정: 스킬 폴더를 .claude/skills/로 복사하세요. Claude가 해당 스킬을 자동으로 감지하여 사용할 것입니다.
저장소 antfu/skills

관련 스킬

github-code-search
업데이트 된 시간 2026년 6월 29일
drizzle-orm
업데이트 된 시간 2026년 6월 29일
clickhouse-io
업데이트 된 시간 2026년 6월 29일
prisma-client-api
업데이트 된 시간 2026년 6월 29일
OR