Firebase 版本 9.6.9
我正在使用 onSnapshot 函式從 firestore 獲取資料。

代碼:
const [posts, setPosts] = useState([])
useEffect(() => {
return onSnapshot(
query(collection(db, 'posts'), orderBy('timestamp', 'desc')),
(snapshot) => {
console.log(snapshot.docs)
}
)
}, [db])
snapshot.docs 記錄元資料,而不是我需要的資料(帖子集合)。

uj5u.com熱心網友回復:
這snapshot.docs是一個QueryDocumentSnapshot陣列。您可以通過在每個快照上使用方法從檔案中獲取資料,.data()如下所示:
return onSnapshot(
query(collection(db, 'posts'), orderBy('timestamp', 'desc')),
(snapshot) => {
const result = snapshot.docs.map((d) => ({
id: d.id,
...d.data()
}))
console.log('>>> Documents', result)
}
)
metadata有一些關于快照的資訊,例如來源。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/449594.html
標籤:javascript 反应 火力基地 谷歌云平台 谷歌云火库
