技术栈 Flutter+Drift+Riverpod ,有表todoRecord
和user
,现在需要查询出待办记录最多的五位用户,使用图表展示,并能够支持自动刷新。
todoRecord
表,定位到userId
出现次数最多的五条userId
;user
表拿到用户信息如姓名;因为需要实现自动刷新,那么使用到了 Drift 的 watch()函数返回 Stream 。
StreamBuilder<List<TodoRecordData>>
嵌套StreamBuilder<List<UserData>>
;StreamBuilder<List<(UserData, int)>>
构建。