- 配置 pnpm workspace monorepo 基础结构 - 初始化 .blueprint/ 蓝图:6 个业务模块、21 张任务卡 - 目标:Z Fold 6 折叠屏不动产物品摸底统计 App(React Native + Expo) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
| id | name | area | status |
|---|---|---|---|
| shared-hooks | 共享 React Hooks | shared | concept |
概述
跨 app 复用的 React 自定义 Hooks,以 packages/hooks 形式发布。依赖 React,不依赖具体 UI 框架。
任务卡
💭 搭建 hooks 库骨架
- status: concept
- complexity: S
- files: packages/hooks/package.json, packages/hooks/src/index.ts
- acceptance: packages/hooks 可被 workspace 内任意 React 应用通过 @repo/hooks 引入,peer dependency 声明 react
💭 数据请求 Hook(useRequest)
- status: concept
- complexity: M
- files: packages/hooks/src/useRequest.ts
- acceptance: 支持 loading/data/error 三态,支持手动触发和依赖自动触发,支持取消请求(AbortController)
💭 移动端交互 Hooks
- status: concept
- complexity: M
- files: packages/hooks/src/useTouch.ts, packages/hooks/src/useScrollLock.ts, packages/hooks/src/useVirtualKeyboard.ts
- acceptance: useTouch 处理 swipe 手势,useScrollLock 控制 body 滚动,useVirtualKeyboard 检测键盘弹出并调整视口
💭 持久化状态 Hook(useLocalStorage)
- status: concept
- complexity: S
- files: packages/hooks/src/useLocalStorage.ts
- acceptance: 封装 useState + localStorage 同步,支持 SSR 安全(无 window 时优雅降级),TypeScript 泛型