所以我有以下代码:
firebase.firestore().collection(collection).doc(doc).collection(collection)
.orderBy("time", "asc").onSnapshot(function(querySnapshot) {
querySnapshot.docChanges().forEach(function(change) {
if (change.type === "added") {
msgData(change);
}
if (change.type === "modified") {
msgData(change);
}
});
});
Run Code Online (Sandbox Code Playgroud)
它让我可以看到旨在作为聊天应用程序的文档列表
我将迭代在消息元素中检索的数据,在消息元素下,有一个输入文本区域用于添加新消息。消息将从最小时间到最大时间(时间戳)排序,以便最新消息将出现在输入文本区域的正上方。插画聊天应用

问题是如果文档数量很大,聊天应用程序会很重,因为它加载大量文档,所以我想限制消息以避免这个问题。但每当我发现解决方案是按降序对时间进行排序,然后进行限制。如果我这样做,最新的聊天消息(输入文本区域上方的消息)是我获取的最旧的数据......