【发布时间】:2020-09-20 19:03:27
【问题描述】:
我在 Firestore 中有两个集合,“用户”和“帖子”。主页是所有帖子都显示在列表视图中的地方,每个帖子都有一个“喜欢”按钮。我将喜欢的帖子保存在页面上的一组final _likedPosts = Set<Posts>(); 中,但它只是暂时保存喜欢的帖子,一旦应用程序关闭,它就会丢失所有数据。如何永久保存用户的 _likedPosts 以便保留数据。我应该对用户进行什么查询以保留 _likedPosts?或者还有其他方法吗?
这就是 Icon 和 onTap 目前的样子,
final _likedPosts = _savedPosts.contains(post);
Icon(_likedPosts ? Icons.favorite : Icons.favorite_border,
color: _likedPosts ? Colors.red : null),
onTap: () {
setState(() {
if (_likedPosts) {
_savedPosts.remove(post);
} else {
_savedPosts.add(post);
}
});
}
【问题讨论】:
-
给每个帖子一个字段,表示喜欢它的点赞和用户(字符串数组)。每当有人喜欢它时,增加“喜欢”计数器并在“用户列表”字段中添加该用户 ID/名称。
-
谢谢@KetanRamteke。
-
@KetanRamteke 我该如何查询这个? stackoverflow.com/q/62194361/13647913
标签: flutter google-cloud-firestore flutter-layout