我正在尝试读取所有用户的消息输入。我可以为特定用户执行此操作,但我想通过在代码中指定为所有用户执行此操作,但是,每个 UID 都是唯一的...
我的实时数据库设置为:
-Realtime Database Tree-
--- chats ---
|
UID (unique) ---
|
email: [email protected]
message: Hello World.
date: Tues Apr 16 2024
我尝试了下面的当前代码:
const dbRef = ref(getDatabase());
get(child(dbRef, 'chats/')).then((snapshot) => {
if (snapshot.exists()) {
const snaps = snapshot.val();
console.log(snaps);
} else {
console.log("No data available");
}
}).catch((error) => {
console.error(error);
});
我想检索电子邮件、消息和日期以将其显示到 console.log 中。我可以使用特定的 UID 来做到这一点,例如
get(child(dbRef, 'chats/specific_UID')).then((snapshot) => {
if (snapshot.exists()) {
const snaps = snapshot.val().message;
console.log(snaps);
但是,我想从电子邮件、消息和日期中获取每个 UID 内的数据。
我该怎么做?
遵循 Firebase 文档中关于 读取具有值事件的节点列表的代码示例,即:
const dbRef = ref(getDatabase());
get(child(dbRef, 'chats/')).then((snapshot) => {
snapshot.forEach(childSnapshot) => {
const value = childSnapshot.val();
console.log(value);
});
}).catch((error) => {
console.error(error);
});