此类场景在 Flutter 中的最佳实践是什么?

1次阅读

共计 268 个字符,预计需要花费 1 分钟才能阅读完成。

场景描述

技术栈 Flutter+Drift+Riverpod,有表 todoRecorduser,现在需要查询出待办记录最多的五位用户,使用图表展示,并能够支持 自动刷新

  1. 查询 todoRecord 表,定位到 userId 出现次数最多的五条userId
  2. 查询 user 表拿到用户信息如姓名;
  3. 绘制图表。

方案

因为需要实现自动刷新,那么使用到了 Drift 的 watch()函数返回 Stream。

  • 方案 1,分两次查询:StreamBuilder>嵌套StreamBuilder>
  • 方案 2,一次查询:自定义 SQL 处理连表查询,直接单 StreamBuilder> 构建。
正文完
 0