最近我用react + firebase建立了一个聊天应用程序,但是有些东西不太正常。
我能够发送消息并将它们存储在firebase数据库中。现在问题来了:它只显示了存储的前25条消息。
下面是有问题的代码部分:
const messagesRef = firestore.collection("messages");
const query = messagesRef.orderBy("createdAt").limit(25);
是否有办法从最后25条消息的底部开始?使用"desc"也不工作,因为它显示的数据从最后一条消息开始在顶部,我想要完全相反。
firebase有一个.limitToLast()函数,您可以将它链接到您的.collection()上
const query = messagesRef.orderBy("createdAt").limitToLast(25);
LimitToLast文档LimitToLast过滤文档
例如:
const query = messagesRef.orderBy("createdAt", "desc").limit(25);
在这里你有更多的信息:https://firebase.google.com/docs/firestore/query-data/order-limit-data#node.js