Vue 3 组合式函数必须以 use 开头、小驼峰命名、语义明确、文件名与函数名严格一致,且每个函数应聚焦单一职责,按通用能力、业务场景、交互行为、数据请求分类。

Vue 3 组合式函数必须以 use 开头,这是官方强制约定,也是类型系统、编辑器支持(如 Volar)和团队协作的基础前提。
命名必须用小驼峰(camelCase)
所有单词连写,首字母小写,后续单词首字母大写,不加横线、下划线或空格:
- ✅ 正确:useScrollPosition、useLocalStorage、useProductList、useUserForm
- ❌ 错误:use-scroll-position、use_local_storage、UseProductList、useProduct-list
名称主体要语义明确、功能可读
后半部分需直指用途,让人一眼理解它做什么,避免模糊泛化词:
创建 Flask + Vue.js 全栈项目,采用单端口架构、uv 依赖管理、结构化日志和生产级前端设计。当用户要求以下操作时触发:创建新的 Flask+Vue 项目、搭建 Web 应用、构建全栈 Python+Vue 应用、初始化 Flask Web 项目、设置单端口 Flask 前后端项目。触发词:新建项目、创建项目、搭建项目、Flask项目、Vue项目。
- ✅ 推荐:useToggle(开关状态)、usePagination(分页控制)、useDebounce(防抖逻辑)、useAuth(用户鉴权)
- ❌ 避免:useData(数据?加载?缓存?)、useHandle(处理什么?)、useLogic(完全无信息量)
文件名与函数名严格一致
每个组合式函数单独一个文件,放在 src/composables/ 目录下,文件名直接对应导出的函数名:
立即学习“前端免费学习笔记(深入)”;
- useRequest.ts → 导出
useRequest() - useTableSelection.ts → 导出
useTableSelection() - 不建议一个文件里导出多个 use 函数
按用途分类,保持粒度合理
组合式函数应聚焦单一职责,常见类型包括:
- 通用能力:useDebounce、useThrottle、useWindowSize
- 业务场景:useOrderList、useUserProfile、useCouponCheck
- 交互行为:useClickOutside、useDraggable、useScrollToBottom
- 数据请求:useProductDetail、useSearchSuggestions

















