Files
2025-05-23 21:19:32 +08:00

3.5 KiB

更新日志 (CHANGELOG)

[1.1.0] - 2024-12-23

新增功能

自动刷新功能

  • 自动刷新控制: 添加了勾选框来启用/禁用自动刷新功能
  • 刷新间隔设置: 支持5秒、10秒、15秒、30秒、1分钟、5分钟的刷新间隔选择
  • 默认配置: 默认刷新间隔设置为15秒
  • 智能状态管理: 启用自动刷新时激活相关控件,禁用时自动禁用下拉菜单
  • 实时状态显示: 显示当前自动刷新状态和下次刷新时间
  • 参数保持: 自动刷新时保持所有其他分析参数不变

用户界面改进

  • 新增控制面板行: 在原有控制面板下方添加自动刷新控制区域
  • 状态指示器: 添加刷新状态和下次刷新时间的实时显示
  • 更新信息: 在统计信息中显示最后更新时间和更新方式(手动/自动)

技术架构优化

  • 回调函数重构: 重新设计数据分析回调函数支持自动刷新触发
  • 状态存储: 使用dcc.Store组件管理自动刷新设置
  • 定时器集成: 集成dcc.Interval组件实现定时刷新
  • 错误处理: 改进自动刷新的错误处理和状态管理

文件变更 📝

修改文件

  • web/app.py: 添加自动刷新控制组件和相关回调函数

新增文件

  • auto_refresh_feature.md: 自动刷新功能详细说明文档
  • demo_auto_refresh.py: 功能演示脚本
  • test_auto_refresh.py: 测试脚本(需要selenium)
  • CHANGELOG.md: 更新日志文档

使用方法 🚀

  1. 启动应用:

    python demo_auto_refresh.py
    
  2. 手动启动:

    python -c "from web.app import run_app; run_app(debug=False, port=8051)"
    
  3. 访问界面: 打开浏览器访问 http://localhost:8051

  4. 使用自动刷新:

    • 勾选"启用自动刷新"
    • 选择所需的刷新间隔
    • 点击"获取数据并分析"获取初始数据
    • 系统将自动按设定间隔刷新数据

技术细节 🔧

新增组件

  • dcc.Checklist: 自动刷新开关控制
  • dcc.Dropdown: 刷新间隔选择器
  • dcc.Interval: 定时器组件
  • dcc.Store: 自动刷新设置存储
  • html.Div: 状态显示组件

回调函数

  • control_auto_refresh: 控制自动刷新功能的启用/禁用
  • update_next_refresh_time: 更新下次刷新时间显示
  • analyze_data_with_auto_refresh: 处理自动和手动触发的数据分析

状态管理

  • 自动刷新设置存储在客户端Store中
  • 定时器状态根据用户设置动态调整
  • 支持手动刷新和自动刷新的区分标记

兼容性 ⚠️

  • 向后兼容: 完全兼容现有功能,不影响原有操作流程
  • 浏览器要求: 需要支持JavaScript的现代浏览器
  • 网络依赖: 自动刷新功能依赖稳定的网络连接

注意事项 ⚠️

  1. 首次使用: 启用自动刷新后需要先手动获取一次数据
  2. 性能考虑: 短间隔刷新可能增加服务器负载,建议根据需要选择合适间隔
  3. 网络异常: 网络连接异常时自动刷新可能失败,可通过手动刷新恢复
  4. 浏览器标签: 切换到其他标签页时,自动刷新可能受到浏览器节能机制影响

未来计划 📋

  • 添加数据变化通知
  • 支持自定义刷新间隔
  • 添加网络状态监控
  • 实现失败重试机制
  • 添加数据历史对比功能

[1.0.0] - 2024-12-XX

初始版本

  • 基础缠论分析功能
  • 交互式图表展示
  • 多种时间周期支持
  • 分型强度分析
  • 买卖点识别