Firestore存在数据但onSnapshot返回空查询快照的问题求助
Firestore存在数据但onSnapshot返回空查询快照的问题求助
虽然Firestore数据库本身运行正常(我登录时的身份认证功能是正常的),但在下面的聊天应用代码中,当执行onSnapshot监听消息集合时,返回的querySnapshot始终是空的,完全读不到数据。

我当前的代码逻辑如下:
useEffect(() => { if (!token || !eventId) return; // Add eventId check fetchEventDetails(); console.log("Fetching messages for event:", eventId); const messagesRef = collection(db, "events", eventId, "chats", "default", "messages"); const messagesQuery = query(messagesRef, orderBy("timestamp", "desc")); const unsubscribe = onSnapshot(messagesQuery, querySnapshot => { // Add a log at the start of the callback to verify it runs. console.log("onSnapshot callback triggered"); // Check if the snapshot is empty if (querySnapshot.empty) { console.log("No documents found in messages"); } else { console.log("Snapshot data:", querySnapshot.docs.map(doc => doc.data())); // Log the data } setMessages( querySnapshot.docs.map(doc => ({ message_id: doc.ref.id, user_id: doc.data().user_id, username: doc.data().username, content: doc.data().content, timestamp: doc.data().timestamp ? doc.data().timestamp.toDate() : new Date(), fileUrl: doc.data().fileUrl || "", })) ); }); return () => unsubscribe(); }, [token, eventId]);
控制台输出的日志如下:
(NOBRIDGE) LOG Fetching messages for event: 4
(NOBRIDGE) LOG onSnapshot callback triggered
(NOBRIDGE) LOG No documents found in messages
我已经加了很多调试日志来排查问题,甚至尝试过直接访问单个指定文档,但还是完全获取不到数据。有没有人能帮我看看这到底是哪里出问题了?
备注:内容来源于stack exchange,提问作者Bilgehan Demirkaya
相关产品推荐
相关产品推荐

