Commit Graph

1718 Commits

Author SHA1 Message Date
zdl
16c30b45b9 feat(GlassCard): 新增通用毛玻璃卡片组件
- 支持多种变体: default, elevated, subtle, transparent
- 支持悬停效果、发光效果、角落装饰
- 黑金配色主题,可全局复用

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-22 18:59:08 +08:00
317bdb1daf 更新Company页面的UI为FUI风格 2025-12-22 17:38:56 +08:00
5843029b9c 更新Company页面的UI为FUI风格 2025-12-22 17:24:19 +08:00
0b95953db9 更新Company页面的UI为FUI风格 2025-12-22 17:19:52 +08:00
3ef1e6ea29 更新Company页面的UI为FUI风格 2025-12-22 17:10:55 +08:00
8936118133 更新Company页面的UI为FUI风格 2025-12-22 16:25:36 +08:00
1071405aaf 更新Company页面的UI为FUI风格 2025-12-22 16:19:26 +08:00
144cc256cf 更新Company页面的UI为FUI风格 2025-12-22 16:13:14 +08:00
82e4fab55c 更新Company页面的UI为FUI风格 2025-12-22 15:57:07 +08:00
22c5c166bf 更新Company页面的UI为FUI风格 2025-12-22 15:48:36 +08:00
61a29ce5ce 更新Company页面的UI为FUI风格 2025-12-22 15:43:08 +08:00
20bcf3770a 更新Company页面的UI为FUI风格 2025-12-22 15:31:10 +08:00
6d878df27c Merge branch 'feature_bugfix/251217_stock' of https://git.valuefrontier.cn/vf/vf_react into feature_bugfix/251217_stock 2025-12-22 13:24:45 +08:00
a2a233bb0f 更新Company页面的UI为FUI风格 2025-12-22 13:24:39 +08:00
zdl
174fe32850 feat(LoadingState): 新增骨架屏变体,优化加载体验
- LoadingState: 新增 variant 参数支持 spinner/skeleton 模式
- LoadingState: 新增 skeletonType 参数支持 grid/list 布局
- AnnouncementsPanel: 使用 list 骨架屏替代 spinner
- DisclosureSchedulePanel: 使用 grid 骨架屏替代 spinner

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-22 13:04:56 +08:00
zdl
77ea38e5c9 perf(hooks): 使用 useRef 缓存加载状态,避免 Tab 切换重复请求
- 使用 useRef 替代 useState 跟踪 hasLoaded 状态
- Tab 切换回来时保持数据缓存,不重新发起请求
- stockCode 变化时重置加载状态,确保新股票正常加载
- useAnnouncementsData 支持 refreshKey 强制刷新

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-22 13:04:55 +08:00
zdl
9e271747da perf(MarketDataView): 优化加载状态,使用骨架屏避免布局跳动
- useMarketData: 新增 hasLoaded 状态,优化首次加载 loading 逻辑
- 导出 SummaryCardSkeleton 组件用于概览卡片占位
- MarketDataView: 使用骨架屏替代空白占位
- DeepAnalysisTab: 使用 skeleton 变体替代 spinner

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-22 13:04:55 +08:00
zdl
88b836e75a fix(mock): 完善大宗交易和龙虎榜数据结构
- 融券余额增加 balance_amount 字段
- 大宗交易:新增 deals 明细、买卖营业部、成交均价
- 龙虎榜:新增 buyers/sellers 营业部列表、净买入金额

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-22 13:04:55 +08:00
307d80c808 更新Company页面的UI为FUI风格 2025-12-22 12:58:01 +08:00
897067a94e 更新Company页面的UI为FUI风格 2025-12-22 12:14:57 +08:00
da02461965 更新Company页面的UI为FUI风格 2025-12-22 11:52:30 +08:00
efe5f45e31 更新Company页面的UI为FUI风格 2025-12-22 11:08:45 +08:00
96c94eaec4 更新Company页面的UI为FUI风格 2025-12-22 10:41:54 +08:00
23dd573663 更新Company页面的UI为FUI风格 2025-12-22 10:21:49 +08:00
2d48e08e43 更新Company页面的UI为FUI风格 2025-12-22 09:52:02 +08:00
46c7649bf0 更新Company页面的UI为FUI风格 2025-12-22 08:01:41 +08:00
ee734e719e 更新Company页面的UI为FUI风格 2025-12-22 07:48:16 +08:00
453c2f8635 更新Company页面的UI为FUI风格 2025-12-22 00:19:44 +08:00
d7429b94ae 更新Company页面的UI为FUI风格 2025-12-22 00:13:30 +08:00
fec478f361 更新Company页面的UI为FUI风格 2025-12-22 00:08:01 +08:00
79ec798abf 更新Company页面的UI为FUI风格 2025-12-22 00:05:26 +08:00
f09062491e 更新Company页面的UI为FUI风格 2025-12-22 00:02:14 +08:00
19ca71068b 更新Company页面的UI为FUI风格 2025-12-21 23:55:34 +08:00
840ed920b8 更新Company页面的UI为FUI风格 2025-12-21 23:52:34 +08:00
9baa57a15d 更新Company页面的UI为FUI风格 2025-12-21 23:43:41 +08:00
54b7d9fc89 更新Company页面的UI为FUI风格 2025-12-21 23:40:02 +08:00
d9b804c46c 更新Company页面的UI为FUI风格 2025-12-21 23:22:33 +08:00
e177de647d 更新Company页面的UI为FUI风格 2025-12-21 19:49:14 +08:00
b61f7a5048 更新Company页面的UI为FUI风格 2025-12-21 19:29:42 +08:00
zdl
d74162b7ce fix(CompanyOverview): 修复 React Strict Mode 下骨架屏闪现问题
- 移除所有 hooks 中的 finally 块,避免请求取消时错误更新状态
- 添加 hasLoaded 状态追踪首次加载完成
- CanceledError 时直接返回,不更新任何状态
- 使用派生 isLoading 状态确保骨架屏正确显示

修复的 hooks:
- useShareholderData.ts
- useManagementData.ts
- useAnnouncementsData.ts
- useDisclosureData.ts
- useBasicInfo.ts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:58:53 +08:00
zdl
bea4c7fe81 perf(MarketDataView): 优化数据映射性能和请求管理
- useMarketData: 使用 Map 替代 findIndex,O(n*m) → O(n+m) 性能优化
- useMarketData: 修复 React StrictMode 下请求被意外取消的问题
- config.ts: 添加 CompanyOverview 和 DynamicTracking 的骨架屏 fallback

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:06 +08:00
zdl
d3f4a8e02c perf(DynamicTracking): 子面板支持延迟加载和骨架屏
- ForecastPanel/NewsPanel 接收 isActive 和 activationKey 控制数据加载
- 使用骨架屏替代 Spinner 加载状态
- Tab 切换时自动刷新数据

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:05 +08:00
zdl
90e2a48d66 feat(BasicInfoTab): 添加骨架屏并适配延迟加载
- 各 Panel 组件适配新的 hooks 参数格式
- 新增 BasicInfoTabSkeleton 骨架屏组件
- 新增 CompanyOverviewNavSkeleton 导航骨架屏组件

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:05 +08:00
zdl
298ac5a335 perf(CompanyOverview): hooks 支持 enabled 延迟加载和刷新
- 所有 hooks 参数改为 options 对象形式
- 新增 enabled 参数支持延迟加载
- 新增 refreshKey 参数支持手动刷新
- 智能初始化 loading 状态,避免首次渲染闪现空状态

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:04 +08:00
zdl
672e746a26 feat(SubTabContainer): 支持 Tab 激活状态和刷新机制
- SubTabContainer: 新增 isActive 和 activationKey props 传递给子组件
- SubTabContainer: 修复 Tab 切换时页面滚动位置跳转问题
- TabPanelContainer: 新增 skeleton prop 支持自定义骨架屏

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:04 +08:00
zdl
88da7ad1a5 fix(mock): 完善股票名称映射,支持多只股票
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:04 +08:00
zdl
8c9cc9845d perf(DynamicTracking): 优化组件加载体验,子组件懒加载
- 使用 React.lazy() 懒加载所有子面板组件
- 为每个 Tab 添加专属骨架屏 fallback
- SubTabContainer 同步渲染,点击立即显示二级导航
- 添加 memo、useCallback、useMemo 性能优化
- 新增 DynamicTrackingSkeleton.tsx 骨架屏组件

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:04 +08:00
zdl
11544909d3 style(MarketDataView): 缩小页面间距
- Container py: 6 → 4
- VStack spacing: 6 → 4

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:04 +08:00
zdl
08842b9097 fix: 优化加载状态和布局
MarketDataView:
- 移除重复的 LoadingState,改用 KLineModule 内部骨架屏
- 修复点击股票行情后数据不显示的问题

FinancialPanorama:
- 移除表格右上角"显示 6 期"标签
- 优化 loadingTab 状态处理

SubTabContainer:
- 重构布局:Tab 区域可滚动,右侧元素固定

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:04 +08:00
zdl
0ad0287f7b fix(FinancialPanorama): 优化期数切换和数据加载
- Tab 切换时检查期数是否一致,不一致则重新加载
- 股票切换时立即清空旧数据,确保显示骨架屏
- 表格右上角显示当前期数

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-19 18:55:03 +08:00