Skip to content

VueUse

v10.x
TypeScript

概述

VueUse 是 Vue 3 的组合式工具函数集合,提供了 200+ 实用的 composables,涵盖状态管理、浏览器 API、传感器、动画等多个领域。

已配置自动导入

项目已配置 @vueuse/core 自动导入,大部分函数无需手动 import。

@vueuse/router 必须手动导入

常用工具

useStorage - 持久化存储

持久化状态

refDebounced - 防抖 Ref

防抖搜索
注意事项

refDebounced 接收的是 Ref 对象,不是函数。

typescript
// ✅ 正确
const debouncedKeyword = refDebounced(keyword, 500)

// ❌ 错误 - 这是 useDebounceFn 的用法
const debouncedFn = useDebounceFn(() => search(), 500)

useDebounceFn / useThrottleFn - 防抖/节流函数

防抖/节流函数

useWindowSize - 窗口尺寸

响应式布局

useOnline - 网络状态

网络状态

useClipboard - 剪贴板

复制到剪贴板

useDark - 暗色模式

暗色模式切换

useEventListener - 事件监听

自动清理事件

useIntersectionObserver - 元素可见性

懒加载/无限滚动

@vueuse/router

必须手动导入

@vueuse/router 的函数不会自动导入,必须显式 import。

useRouteParams - 响应式路由参数

响应式路由参数

useRouteQuery - 响应式查询参数

响应式查询参数

何时使用 useRouteQuery?

场景方案
需要分享搜索结果链接useRouteQuery
需要浏览器后退保持状态useRouteQuery
普通分页/筛选直接用 ref
普通分页用 ref

完整示例

搜索页面

相关资源

Released under the MIT License.