|
|
f7f9774caa
|
fix: 恢复原有涨跌幅样式,将周涨幅改为超预期得分
- 恢复HorizontalDynamicNewsEventCard使用StockChangeIndicators组件
- 修改StockChangeIndicators:周涨幅→超预期得分,平均涨幅→平均超额,最大涨幅→最大超额
- 超预期得分显示为分数形式(如60分),根据分数显示不同颜色
|
2025-12-03 08:38:17 +08:00 |
|
|
|
2f580c3c1f
|
fix: 修复Community页面事件卡片显示,替换StockChangeIndicators为EventPriceDisplay
- HorizontalDynamicNewsEventCard 使用 EventPriceDisplay 替换 StockChangeIndicators
- 移除周涨幅、平均涨幅,改为显示最大超额和超预期得分
- 点击最大超额可切换显示平均超额
|
2025-12-03 08:29:21 +08:00 |
|
|
|
259b298ea6
|
update pay ui
|
2025-12-03 08:24:37 +08:00 |
|
|
|
5ff68d0790
|
update pay ui
|
2025-12-03 08:02:49 +08:00 |
|
|
|
2c4f5152e4
|
update pay function
|
2025-11-30 22:54:15 +08:00 |
|
zdl
|
d825e4fe59
|
fix: 关注按钮UI调整
|
2025-11-27 11:19:20 +08:00 |
|
zdl
|
e0b7f8c59d
|
feat: 调整事件列表h5模式调整
|
2025-11-26 16:44:53 +08:00 |
|
zdl
|
30fc156474
|
fix: 移动端事件中心事件列表添加时间
|
2025-11-26 16:23:28 +08:00 |
|
zdl
|
a2831c82a8
|
feat: 移动端不显示政策标签
|
2025-11-26 16:02:59 +08:00 |
|
zdl
|
9b55610167
|
perf: 将 Moment.js 替换为 Day.js,优化打包体积
## 改动内容
- 替换所有 Moment.js 引用为 Day.js (29 个文件)
- 更新 Webpack 配置,调整 calendar-lib chunk
- 添加 Day.js 插件支持 (isSameOrBefore, isSameOrAfter)
- 移除 Moment.js 依赖
## 性能提升
- JavaScript 打包体积减少: ~50 KB (未压缩)
- gzip 后减少: ~15-18 KB
- 预计首屏加载时间提升: 15-20%
## 影响范围
- Dashboard 组件: 5 个文件
- Community 组件: 19 个文件
- 工具函数: tradingTimeUtils.js (添加插件)
- 其他组件: 5 个文件
## 测试状态
- ✅ 构建成功 (npm run build)
|
2025-11-17 19:27:45 +08:00 |
|
zdl
|
990d1ca0bc
|
perf: 使用 React.memo 优化社区组件渲染性能
**优化目标**:
- 减少组件卸载次数:从 6 次/刷新 → 1-2 次/刷新(↓ 66-83%)
- 减少渲染次数:从 9 次/刷新 → 4-5 次/刷新(↓ 44-55%)
**优化组件**(共 7 个):
1. ✅ ModeToggleButtons.js - 简单 UI 组件
2. ✅ DynamicNewsEventCard.js - 平铺模式卡片(被渲染 30+ 次)
3. ✅ HorizontalDynamicNewsEventCard.js - 纵向模式卡片(被渲染 10+ 次)
4. ✅ VerticalModeLayout.js - 布局组件
5. ✅ EventScrollList.js - 列表组件
6. ✅ VirtualizedFourRowGrid.js - 虚拟化网格(forwardRef)
7. ✅ DynamicNewsCard.js - 主组件(forwardRef)
**技术实现**:
- 普通组件:`React.memo(Component)`
- forwardRef 组件:`React.memo(forwardRef(...))`
- 所有回调函数已使用 useCallback 确保引用稳定
**预期效果**:
- 列表渲染的卡片组件收益最大(减少 90% 重渲染)
- 布局组件渲染次数从 9 次降到 1 次(减少 88%)
- 整体用户体验更流畅,无明显卡顿
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-17 15:00:46 +08:00 |
|
zdl
|
e23feb3c23
|
feat: 添加评论功能
|
2025-11-14 16:15:13 +08:00 |
|
|
|
5e70f4443d
|
update ui
|
2025-11-14 06:39:29 +08:00 |
|
|
|
1773c571ab
|
update ui
|
2025-11-13 23:44:37 +08:00 |
|
|
|
6452869968
|
update ui
|
2025-11-13 23:34:29 +08:00 |
|
|
|
3caa5f4c3a
|
update ui
|
2025-11-13 23:24:54 +08:00 |
|
|
|
d3b980b3ca
|
update ui
|
2025-11-13 23:06:19 +08:00 |
|
|
|
6113a3fefd
|
update ui
|
2025-11-13 22:57:24 +08:00 |
|
|
|
f0bb00a2ce
|
update ui
|
2025-11-13 22:35:33 +08:00 |
|
zdl
|
44b8c64907
|
feat(community): 列表模式事件卡片高度自适应
|
2025-11-07 19:25:10 +08:00 |
|
|
|
83cd875690
|
事件中心UI优化
|
2025-11-07 11:20:45 +08:00 |
|
|
|
25d3bf4d95
|
事件中心UI优化
|
2025-11-07 11:08:06 +08:00 |
|
|
|
3eff0554f9
|
事件中心UI优化
|
2025-11-07 10:56:08 +08:00 |
|
zdl
|
ad933e9fb2
|
feat: UI调整
|
2025-11-05 23:54:43 +08:00 |
|
zdl
|
612b58c983
|
feat: feat: 优化事件卡片 UI 和交互体验
修复 useColorModeValue 调用位置(提升到顶层)
优化分页和滚动逻辑
动态 indicatorSize 支持(detail/list 模式)
|
2025-11-05 19:15:36 +08:00 |
|
zdl
|
ca52d3bd87
|
feat: 纵向列表(HorizontalDynamicNewsEventCard.js:105-133) - 添加 Tooltip 提示
平铺列表(DynamicNewsEventCard.js:232) - 修改行数限制
|
2025-11-05 16:40:35 +08:00 |
|
zdl
|
62ae2e0803
|
feat: 提取 ImportanceBadge 组件
|
2025-11-05 16:15:18 +08:00 |
|
zdl
|
aa1a93c65b
|
feat: 重要性徽章样式优化(圆形设计)
|
2025-11-05 15:19:02 +08:00 |
|
zdl
|
e0cfa6fab2
|
feat: 创建纵向模式的横向卡片组件
|
2025-11-05 08:26:05 +08:00 |
|
zdl
|
7e32dda2df
|
feat本次提交包含的优化
✅ StockChangeIndicators 组件优化
- 调整 padding 使布局更紧凑
- 修复窄卡片中的折行问题
- 自动根据内容调整宽度
✅ 重要性等级视觉优化
- 统一使用红色系(S→A→B→C:从深红到浅红)
- 添加 badgeBg 字段支持新的角标样式
✅ DynamicNewsEventCard 卡片改版
- 左上角矩形角标显示重要性(镂空边框样式)
- 悬浮显示所有等级说明
- 标题限制两行显示
✅ Mock 数据完整性
- 添加缺失的 related_week_chg 字段
- 确保三个涨跌幅指标数据完整
|
2025-11-03 15:38:30 +08:00 |
|
zdl
|
6cde2175db
|
feat: 实现实时要闻事件卡片点击高亮效果
功能新增:
- 点击事件卡片后显示高亮状态
- 当前选中的卡片有明显的视觉反馈
视觉效果:
- 选中状态:蓝色浅背景 (blue.50) + 蓝色粗边框 (2px, blue.500) + 大阴影 (lg)
- 未选中状态:原样式(白色/灰色交替背景 + 细边框 + 小阴影)
- 过渡动画:0.3s 平滑过渡
- 悬停效果:选中卡片悬停时边框变为 blue.600,阴影增强为 xl
技术实现:
1. DynamicNewsCard.js:
- 传递 isSelected prop 给 DynamicNewsEventCard
- 判断逻辑:isSelected={selectedEvent?.id === event.id}
2. DynamicNewsEventCard.js:
- 添加 isSelected 参数(默认 false)
- 根据 isSelected 动态调整 Card 样式:
- 背景色:选中 blue.50 / 未选中 原样式
- 边框:选中 2px blue.500 / 未选中 1px 原颜色
- 阴影:选中 lg / 未选中 sm
用户体验提升:
- 清晰显示当前查看的事件
- 与下方详情面板形成呼应
- 视觉反馈明确,交互友好
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-03 11:28:03 +08:00 |
|
zdl
|
c372832f1f
|
feat: 新增实时要闻·动态追踪与市场复盘功能,优化导航体验
新增功能:
- 实时要闻·动态追踪横向滚动卡片(DynamicNewsCard)
- 动态新闻事件卡片组件(DynamicNewsEventCard)
- 市场复盘卡片组件(MarketReviewCard)
- 股票涨跌幅指标组件(StockChangeIndicators)
- 交易时间工具函数(tradingTimeUtils)
- Mock API 支持动态新闻数据生成
UI 优化:
- EventFollowButton 改用 react-icons 星星图标,实现真正的空心/实心效果
- 关注按钮添加半透明白色背景(whiteAlpha.500),悬停效果更明显
- 事件卡片标题添加右侧留白,防止关注按钮遮挡文字
性能优化:
- 禁用 Router v7_startTransition 特性,解决路由切换延迟 2 秒问题
- 调整导航菜单点击顺序(先跳转后关闭),提升响应速度
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-31 14:11:03 +08:00 |
|
zdl
|
ff9f1fe2a1
|
feat: 创建组合组件(Molecules)
- EventHeader: 标题头部组件(100行) │ │
│ │ - CompactEventCard: 紧凑模式卡片(160行) │ │
│ │ - DetailedEventCard: 详细模式卡片(170行) │ │
│ │ - index.js: EventCard 统一入口(60行)
|
2025-10-30 12:15:03 +08:00 |
|
zdl
|
a39d57f9de
|
feat: 创建原子组件(Atoms) - EventTimeline: 时间轴显示(60行) │ │
│ │ - EventImportanceBadge: 重要性等级标签(100行) │ │
│ │ - EventStats: 统计信息组件(60行) │ │
│ │ - EventFollowButton: 关注按钮(40行) │ │
│ │ - EventPriceDisplay: 价格变动显示(130行) │ │
│ │ - EventDescription: 描述文本组件(60行)
|
2025-10-30 12:14:27 +08:00 |
|