zdl
555dc15bb2
refactor(HomeNavbar): Phase 3 - 提取用户菜单组件
**背景**
继 Phase 1 (静态组件) 和 Phase 2 (Redux订阅) 后,进一步优化 HomeNavbar
**重构内容**
1. **新增组件目录** `src/components/Navbars/components/UserMenu/`
- UserAvatar.js (101行) - 头像 + 皇冠图标 + 订阅边框
- DesktopUserMenu.js (93行) - 桌面版 Tooltip + 订阅弹窗
- TabletUserMenu.js (166行) - 平板版下拉菜单 (含所有功能)
- index.js - 统一导出
2. **HomeNavbar.js 优化**
- 删除 ~150 行用户菜单 JSX 代码
- 移除未使用的 Tooltip 导入
- 替换为 DesktopUserMenu / TabletUserMenu 组件调用
- 1533 → 1394 行 (-139行, -9%)
**技术亮点**
- React.memo 优化渲染性能
- 复用 Redux subscriptionSlice (Phase 2)
- 响应式设计 (isDesktop vs isTablet)
- 组件内聚,降低父组件耦合
**累计成果** (Phase 1-3)
- 原始: 1623 行
- 当前: 1394 行
- 减少: 229 行 (-14%)
- 提取: 7 个组件 (4 静态 + 3 用户菜单)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 17:01:01 +08:00
..
2025-10-11 16:16:02 +08:00
2025-10-30 13:22:45 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-23 11:44:58 +08:00
2025-10-11 16:16:02 +08:00
2025-10-21 18:34:38 +08:00
2025-10-18 22:45:39 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 12:02:01 +08:00
2025-10-11 12:02:01 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-13 19:53:13 +08:00
2025-10-11 12:02:01 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-30 17:01:01 +08:00
2025-10-11 16:16:02 +08:00
2025-10-23 15:25:36 +08:00
2025-10-23 15:25:36 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-29 17:49:05 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-17 18:59:00 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 16:16:02 +08:00
2025-10-29 19:34:33 +08:00
2025-10-29 12:29:41 +08:00
2025-10-11 16:16:02 +08:00
2025-10-11 12:02:01 +08:00
2025-10-11 16:16:02 +08:00
2025-10-27 21:14:51 +08:00
2025-10-30 15:02:20 +08:00
2025-10-28 20:09:21 +08:00
2025-10-15 11:03:00 +08:00
2025-10-30 13:22:45 +08:00
2025-10-22 15:41:34 +08:00
2025-10-11 12:02:01 +08:00
2025-10-15 11:03:00 +08:00