AssetManager.UniApp/todo.md
claw_bot 4b2ee7038b docs: 更新 todo 清单,标记所有任务完成
前端:
- TypeScript 迁移 
- P1-P3 功能增强 
- P6 UI/UX 优化 
- 交易时间优化 

后端:
- 收益率并发问题 
- SqlSugarClient 高性能模式 
- 数据源优化 
2026-03-25 02:59:09 +00:00

3.7 KiB
Raw Blame History

AssetManager UniApp UI 优化进度

已完成

2026-03-13

  • 移除所有条件编译,专注于微信小程序端
  • config.vue: 使用原生 picker 替代 u-picker
  • detail.vue:
    • 使用原生 input 替代 u-input小程序兼容性
    • 使用原生 picker 替代 u-datetime-picker
    • 修复日期选择器 NaN 显示问题
    • 恢复股票搜索功能
  • strategies/edit/edit.vue: 替换 u-input 为原生 input
  • strategies/strategies.vue: 清理未使用的 CSS
  • 添加 OPTIMIZATION.md 优化计划文档

2026-03-24

  • TypeScript 迁移完成Phase 0-4
  • P3 功能增强(下拉刷新/上拉加载/空状态)
  • P6 UI/UX 优化(产品评审反馈)
  • 交易时间格式优化
  • 小程序编译兼容性修复

2026-03-25

  • 收益率并发问题修复(后端)
  • SqlSugarClient 高性能模式优化(后端)
  • 数据源优先级调整(后端)

当前状态

组件使用策略

组件类型 推荐方案 原因
button 保留原生 样式简单,小程序兼容性好
input 原生 input u-input 小程序兼容性问题
picker 原生 picker u-picker 小程序显示异常
icon uni-icons 已有使用,保持统一
toast u-toast 小程序兼容性好
skeleton 自定义 小程序中更可控

页面代码量

页面 总行数 CSS行数 状态
index.vue 654 428 已优化
detail.vue 1039 330 已优化
config.vue 733 325 已优化
strategies/edit 997 ~250 已优化
strategies 230 117 已清理
me.vue 180 47 无需修改

全部任务完成!

前端完成清单

TypeScript 迁移

  • Phase 0 - 基础设施tsconfig、types 目录)
  • Phase 1 - 类型定义6 个类型文件)
  • Phase 2 - 工具函数迁移currency.ts、api.ts
  • Phase 3 - 页面组件迁移6 个页面)
  • Phase 4 - 清理验证tsc --noEmit 通过)

P1 - CSS 清理

  • index.vue: 移除未使用的 CSS 类
  • detail.vue: 清理冗余样式
  • config.vue: 优化表单样式

P2 - 小程序兼容性

  • 替换 u-input 为原生 input
  • 替换 u-picker 为原生 picker
  • ES2015 语法兼容

P3 - 功能增强

  • 下拉刷新index / strategies / me / detail
  • 上拉加载detail 交易记录分页)
  • 空状态优化index / strategies / detail

P6 - UI/UX 优化

  • 收益曲线空状态引导
  • 首页当日涨跌幅显示
  • Y 轴刻度
  • 状态标签颜色优化
  • 交易记录时间格式优化
  • 组合名称长度限制
  • 去掉无意义标签
  • 运行天数替代会员等级

交易时间优化

  • 添加时间选择器
  • 后端时间解析修复

后端完成清单

收益率并发问题

  • static 内存缓存(跨请求共享)
  • Lazy<Task> 防止重复请求
  • SqlSugarClient 高性能模式
  • 后台写入创建新实例
  • SemaphoreSlim 串行化 → 最终方案

数据源优化

  • 实时价格:腾讯 → Yahoo → Tiingo
  • 历史K线Yahoo → Tiingo

其他优化

  • 用户访问时自动触发净值计算
  • 收益曲线数据不一致修复

兼容性

  • 微信小程序(已验证)
  • ⚠️ H5需要条件编译恢复
  • ⚠️ App需要条件编译恢复

注意事项

  1. 微信开发者工具需关闭"过滤无依赖文件"
  2. uview-plus 组件在小程序中有兼容性问题,谨慎使用
  3. 原生组件在小程序中表现更稳定
  4. SqlSugarClient 每次创建新实例IsAutoCloseConnection=true