Flatter Firebase文档是随机排序的

Flatter Firebase文档是随机排序的,firebase,flutter,google-cloud-firestore,Firebase,Flutter,Google Cloud Firestore,我用flatter做了一个简单的聊天应用。我的应用程序运行良好(获取数据并将数据转储到firebase中),但一旦我的消息进入数据库,它们就会被随机排序,导致我的MSG以随机顺序显示 我已经尝试在我的flatter代码中反转快照队列,但没有帮助…在上载文档之前,您需要将文档名称附加到文档中。 我认为您遇到此问题是因为您的文档被赋予了自动ID 尝试使用当前时间戳作为文档名。这将有助于根据上传的时间安排文档 Firestore.instance.collection(CollectionName).

我用flatter做了一个简单的聊天应用。我的应用程序运行良好(获取数据并将数据转储到firebase中),但一旦我的消息进入数据库,它们就会被随机排序,导致我的MSG以随机顺序显示


我已经尝试在我的flatter代码中反转快照队列,但没有帮助…

在上载文档之前,您需要将文档名称附加到文档中。 我认为您遇到此问题是因为您的文档被赋予了自动ID

尝试使用当前时间戳作为文档名。这将有助于根据上传的时间安排文档

Firestore.instance.collection(CollectionName).document(Timestamp.now()).setData(messageMap)


我希望这就是你需要的。如果没有。请共享将邮件上载到数据库的代码。

请编辑问题,以更详细地描述哪些内容未按预期方式工作,包括您的代码。我们应该能够复制你所观察到的使用你提供的细节。相当好的信息。但是,最好将时间戳数据存储在子字段中,以便它可以用于排序和查询。如果将其存储为documentId,则会限制其使用。让Firestore创建documentId并在文档字段上使用.order子句强制排序。是的,当然。你的权利,这是最好的方法。我个人只喜欢更少的代码。因为有了它,我不必做任何排序,但可以做我想要的所有排序。