zdl
|
357b8bbdd7
|
feat: Company - 5个事件(页面浏览、股票搜索、Tab 切换、自选股管理)
|
2025-10-28 21:52:27 +08:00 |
|
zdl
|
c6a6444d9a
|
feat: 概念中心的事件追踪
|
2025-10-28 21:45:51 +08:00 |
|
zdl
|
c42a14aa8f
|
feat: 首页登陆事件追踪
|
2025-10-28 21:45:06 +08:00 |
|
zdl
|
cddd0e860e
|
feat: Concept 页面 - 9个事件搜索、筛选、概念交互、个股查看、时间轴、视图切换
新建文件:
- src/views/Concept/hooks/useConceptEvents.js (203行)
- 提供8个追踪函数
- 页面浏览自动追踪
- 完整的事件属性定义
修改文件:
- src/views/Concept/index.js
- 添加 useConceptEvents Hook
- 集成追踪到9个关键函数:
i. handleSearch - 搜索查询
ii. handleSortChange - 排序变化
iii. handleDateChange - 日期变化
iv. handlePageChange - 翻页
v. handleConceptClick - 概念点击(传递位置)
vi. handleViewStocks - 查看个股
vii. handleViewContent - 历史时间轴
viii. 视图切换按钮 - 网格/列表切换
ix. ConceptCard/ConceptListItem - 位置追踪
追踪事件: 9个
1. CONCEPT_CENTER_VIEWED - 页面浏览
2. SEARCH_QUERY_SUBMITTED - 搜索查询
3. SEARCH_FILTER_APPLIED - 筛选(sort/date)
4. CONCEPT_CLICKED - 概念点击(含位置)
5. CONCEPT_STOCKS_VIEWED - 查看个股
6. CONCEPT_STOCK_CLICKED - 股票点击
7. CONCEPT_TIMELINE_VIEWED - 历史时间轴
8. NEWS_LIST_VIEWED - 翻页(复用)
9. VIEW_MODE_CHANGED - 视图切换
|
2025-10-28 21:40:33 +08:00 |
|
zdl
|
fbe3434521
|
feat: 完成集成后,您可以在 PostHog 中分析:
- 用户搜索行为:搜索频率、热门搜索词、搜索成功率
- 概念关注度:哪些概念最受关注、点击排名分布
- 热力图使用情况:用户点击的股票市值分布、涨跌偏好
- 日期筛选模式:用户倾向查看哪些日期的数据
- 转化漏斗:从页面浏览 → 搜索 → 点击 → 详情的转化率
|
2025-10-28 21:26:13 +08:00 |
|
zdl
|
bca2ad4f81
|
feat: 实现的功能 Home 页面追踪(2个事件)
**Home 页面**:
1. **页面访问** - 了解流量来源、登录转化率
2. **功能卡片点击** - 识别最受欢迎的功能
3. **推荐功能效果** - 分析特色功能(新闻中心)的点击率
|
2025-10-28 21:24:42 +08:00 |
|
zdl
|
8f3af4ed07
|
feat: Community 页面 PostHog 事件追踪完成
Custom Hook 集成(useEventFilters.js) 页面组件追踪
|
2025-10-28 21:06:53 +08:00 |
|
zdl
|
fb76e442f7
|
feat: 从 React Context 迁移到 Redux,实现了:
1. ✅ 集中式状态管理 - PostHog 状态与应用状态统一管理
2. ✅ 自动追踪机制 - Middleware 自动拦截 Redux actions 进行追踪
3. ✅ Redux DevTools 支持 - 可视化调试所有 PostHog 事件
4. ✅ 离线事件缓存 - 网络恢复时自动刷新缓存事件
5. ✅ 性能优化 Hooks - 提供轻量级 Hook 避免不必要的重渲染
|
2025-10-28 20:51:10 +08:00 |
|
zdl
|
6506cb222b
|
feat: PostHog 集成\
1. ✅ 安装依赖: posthog-js@^1.280.1
2. ✅ 创建核心文件:
- src/lib/posthog.js - PostHog SDK 封装(271 行)
- src/lib/constants.js - 事件常量定义(AARRR 框架)
- src/hooks/usePostHog.js - PostHog React Hook
- src/hooks/usePageTracking.js - 页面追踪 Hook
- src/components/PostHogProvider.js - Provider 组件
3. ✅ 集成到应用:
- 修改 src/App.js,在最外层添加 <PostHogProvider>
- 自动追踪所有页面浏览
4. ✅ 配置环境变量:
- 在 .env 添加 PostHog 配置项
- REACT_APP_POSTHOG_KEY 留空,需要用户填写
5. ✅ 创建文档: POSTHOG_INTEGRATION.md 包含完整的使用说明
|
2025-10-28 20:09:21 +08:00 |
|
zdl
|
542b20368e
|
Merge branch 'feature_2025/1028_bugfix' into feature
|
2025-10-28 19:41:20 +08:00 |
|
zdl
|
d456c3cd5f
|
pref: 去除坏味道
|
2025-10-28 19:06:50 +08:00 |
|
zdl
|
b221c2669c
|
feat: 微信登陆逻辑调整
|
2025-10-28 19:04:58 +08:00 |
|
zdl
|
356f865f09
|
feat: 微信mock数据调整
|
2025-10-28 18:47:39 +08:00 |
|
|
|
512aca16d8
|
整合register端口进入login端口
|
2025-10-28 15:47:50 +08:00 |
|
|
|
71df2b605b
|
整合register端口进入login端口
|
2025-10-28 14:54:45 +08:00 |
|
|
|
5892dc3156
|
整合register端口进入login端口
|
2025-10-28 14:39:37 +08:00 |
|
zdl
|
e05ea154a2
|
feat: 文案调整
|
2025-10-28 14:16:30 +08:00 |
|
|
|
8787d5ddb7
|
整合register端口进入login端口
|
2025-10-28 13:45:45 +08:00 |
|
zdl
|
c33181a689
|
feat: 修复首页新闻中心卡片布局跳变问题
问题根源:
使用 useBreakpointValue 的 isMobile 变量在初始渲染时返回 undefined,导致:
1. 服务端渲染/首次加载时显示一种布局
2. 客户端水合后切换到另一种布局
3. 用户看到明显的布局跳变(先横向后纵向,或反之)
解决方案:
不使用条件渲染两套完全不同的 JSX,而是使用响应式样式让同一套 JSX 自动适应不同屏幕。
修改策略:
将移动端(VStack)和桌面端(Flex横向)合并为一套响应式布局:
- 使用 Flex + 响应式 flexDirection
- flexDirection={{ base: column, md: row }}(移动端纵向,桌面端横向)
- 统一使用响应式属性而不是条件渲染
|
2025-10-28 13:06:46 +08:00 |
|
|
|
29f035b1cf
|
Merge branch 'feature' of https://git.valuefrontier.cn/vf/vf_react into feature
|
2025-10-28 11:21:11 +08:00 |
|
|
|
513134f285
|
整合register端口进入login端口
|
2025-10-28 11:20:50 +08:00 |
|
zdl
|
7da50aca40
|
Merge branch 'feature' of https://git.valuefrontier.cn/vf/vf_react into feature
|
2025-10-28 11:18:50 +08:00 |
|
zdl
|
72aae585d0
|
fix: 修复首页路由跳转失败的问题
|
2025-10-28 11:18:39 +08:00 |
|
|
|
24c6c9e1c6
|
修改个股详情中桑基图提示Stack: Error: Sankey is a DAG
|
2025-10-28 10:46:23 +08:00 |
|
zdl
|
58254d3e8f
|
bugfix:调整
|
2025-10-27 22:31:41 +08:00 |
|
zdl
|
760ce4d5e1
|
feat: 路由链接调整
|
2025-10-27 22:31:06 +08:00 |
|
zdl
|
95c1eaf97b
|
bugfix:修复警告错误
|
2025-10-27 22:29:53 +08:00 |
|
zdl
|
657c446594
|
feat: 错误logger 不在被error页面捕获
|
2025-10-27 21:14:51 +08:00 |
|
zdl
|
10f519a764
|
Merge branch 'feature' of https://git.valuefrontier.cn/vf/vf_react into feature
|
2025-10-27 17:52:39 +08:00 |
|
zdl
|
f072256021
|
feat(EventList): 重构渲染和UI - 精简/详细模式优化、推送控制、描述展开
**主要变更**:
1. **渲染函数重构**:
- 重写 renderCompactEvent:标题2行+标签内联+按钮右侧布局
- 重写 renderDetailedEvent:标题+优先级+统计+价格标签+时间作者
- 添加 getTimelineBoxStyle 函数统一时间轴样式
- renderCompactEvent 支持隔行变色(index % 2)
2. **顶部控制栏全面升级**:
- 改为 sticky 定位,全宽白色背景
- 左侧占位,中间嵌入分页器,右侧控制按钮
- 新增桌面推送开关(使用 handlePushToggle)
- WebSocket 状态简化为 🟢实时/🔴离线
- 精简模式切换改为 xs 尺寸
3. **描述展开/收起功能**:
- 详细模式支持长描述(>120字符)展开/收起
- 使用 expandedDescriptions 状态管理
- noOfLines 动态切换
4. **统一时间格式**:
- 所有时间显示统一为 YYYY-MM-DD HH:mm
**效果**:
- 精简模式更紧凑,信息密度更高
- 详细模式布局更清晰,价格标签更易读
- 顶部控制栏功能集中,操作更便捷
- 推送权限管理可视化
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-27 17:46:13 +08:00 |
|
zdl
|
0e3bdc9b8c
|
feat(EventList): 功能增强 - 集成NotificationContext和添加动画
**主要变更**:
1. **集成NotificationContext**:
- 引入 useNotification hook,替代本地通知权限状态
- 删除本地 notificationPermission 状态和 useEffect
- 使用 browserPermission 和 requestBrowserPermission
- 添加 handlePushToggle 函数处理推送开关切换
2. **添加动画支持**:
- 从 @emotion/react 引入 keyframes
- 定义 pulseAnimation 脉冲动画(用于S/A级重要性标签)
3. **添加描述展开状态**:
- 新增 expandedDescriptions 状态管理
**效果**:
- 推送权限管理更集中统一
- 支持动画效果增强视觉体验
- 为后续UI优化做准备
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-27 17:40:51 +08:00 |
|
zdl
|
5e4c4e7cea
|
feat(EventList): UI优化 - 简化标签文字和调整顶部间距
**改进内容**:
1. 简化涨跌幅标签文字
- 平均涨幅 → 平均
- 最大涨幅 → 最大
- 周涨幅 → 周
2. 调整顶部间距
- 移除顶部padding (py={8} → pb={8})
- 控制栏紧贴页面顶部
**效果**: 节省显示空间,标签更简洁,顶部无留白
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-27 17:36:28 +08:00 |
|
zdl
|
31a7500388
|
feat: 热点事件UI调整成轮播图
|
2025-10-27 17:22:03 +08:00 |
|
zdl
|
03c113fe1b
|
feat: 修复数据获取bug
|
2025-10-27 17:21:31 +08:00 |
|
zdl
|
0f3bc06716
|
feat: 访问 http://localhost:3000/admin/community:
1. 页面加载后应停留在顶部
2. 点击搜索框,页面应平滑滚动到"实时事件时间轴"区域
3. 再次点击搜索框不会重复滚动
|
2025-10-27 16:37:36 +08:00 |
|
zdl
|
e568b5e05f
|
feat: 热点事件UI调整
|
2025-10-27 15:59:13 +08:00 |
|
|
|
c5aaaabf17
|
update ip address to company's
|
2025-10-27 15:54:22 +08:00 |
|
|
|
9ede603c9f
|
update ip address to company's
|
2025-10-27 15:47:04 +08:00 |
|
zdl
|
629c63f4ee
|
feat: 文案修改
|
2025-10-27 15:40:20 +08:00 |
|
zdl
|
d6bc2c7245
|
feat: 事件中心去掉头图, 并且将热点区域提到首屏
|
2025-10-27 15:39:56 +08:00 |
|
zdl
|
dc38199ae6
|
feat: 添加mock数据
|
2025-10-27 15:39:06 +08:00 |
|
zdl
|
d93b5de319
|
feat: 将事件中心的头部添加到首页
|
2025-10-27 15:31:22 +08:00 |
|
zdl
|
199a54bc12
|
feat: 为"股票行情"和"财务全景"标签页添加 Mock 数据支持
问题:
- 点击"股票行情"标签页:MarketDataView 组件需要市场数据接口
- 点击"财务全景"标签页:FinancialPanorama 组件需要财务数据接口
- 这些接口都没有 mock 数据,导致页面显示空白
需要添加的接口:
股票行情 (MarketDataView) - 7个接口
1. /api/market/trade/:stockCode - 成交数据
2. /api/market/funding/:stockCode - 资金流向
3. /api/market/bigdeal/:stockCode - 大单统计
4. /api/market/unusual/:stockCode - 异动分析
5. /api/market/pledge/:stockCode - 股权质押
6. /api/market/summary/:stockCode - 市场摘要
7. /api/market/rise-analysis/:stockCode - 涨停分析
8. /api/stock/:stockCode/latest-minute - 最新分时数据
财务全景 (FinancialPanorama) - 9个接口
1. /api/financial/stock-info/:stockCode - 股票基本信息
2. /api/financial/balance-sheet/:stockCode - 资产负债表
3. /api/financial/income-statement/:stockCode - 利润表
4. /api/financial/cashflow/:stockCode - 现金流量表
5. /api/financial/financial-metrics/:stockCode - 财务指标
6. /api/financial/main-business/:stockCode - 主营业务
7. /api/financial/forecast/:stockCode - 业绩预告
8. /api/financial/industry-rank/:stockCode - 行业排名
9. /api/financial/comparison/:stockCode - 期间对比
实施步骤:
1. 创建 src/mocks/data/market.js - 市场数据
2. 创建 src/mocks/data/financial.js - 财务数据
3. 创建 src/mocks/handlers/market.js - 市场接口handlers
4. 创建 src/mocks/handlers/financial.js - 财务接口handlers
5. 更新 src/mocks/handlers/index.js - 注册新handlers
数据内容:
- 为平安银行 (000001) 提供完整真实数据
- 其他股票代码生成合理的模拟数据
|
2025-10-27 15:10:03 +08:00 |
|
zdl
|
39feae87a6
|
feat: 添加mock数据
|
2025-10-27 14:56:44 +08:00 |
|
zdl
|
a9dc1191bf
|
feat:. mockSocketService 添加 connecting 状态
- 新增 connecting 标志防止重复连接
- 在 connect() 方法中检查 connected 和 connecting 状态
- 连接成功或失败后清除 connecting 标志\
2. NotificationContext 调整监听器注册顺序
- 在 useEffect 中重新排序初始化步骤
- 第一步:注册所有事件监听器(connect, disconnect, new_event 等)
- 第二步:获取最大重连次数
- 第三步:调用 socket.connect()
- 使用空依赖数组 [] 防止 React 严格模式重复执行\
3. logger 添加日志限流
- 实现 shouldLog() 函数,1秒内相同日志只输出一次
- 使用 Map 缓存最近日志,带最大缓存限制(100条)
- 应用到所有 logger 方法:info, warn, debug, api.request, api.response
- 错误日志(error, api.error)不做限流,始终输出\
修复 emit 时机确保事件被接收
- 在 mockSocketService 的 connect() 方法中
- 使用 setTimeout(0) 延迟 emit(connect) 调用
- 确保监听器注册完毕后再触发事件\
|
2025-10-27 13:13:56 +08:00 |
|
zdl
|
227e1c9d15
|
feat: 修复 UnifiedSearchBox 语法错误
|
2025-10-27 11:38:16 +08:00 |
|
zdl
|
b5cdceb92b
|
feat: 日期标签删除重置内容
|
2025-10-27 10:51:19 +08:00 |
|
zdl
|
aacbe5c31c
|
feat: 调整时间中心搜索逻辑
|
2025-10-27 10:32:51 +08:00 |
|
zdl
|
197c792219
|
feat: 事件列表添加最低高度
|
2025-10-27 00:12:09 +08:00 |
|
zdl
|
794581e429
|
feat: 热门关键词取去掉loading态
|
2025-10-27 00:11:46 +08:00 |
|