我正在尝试从Firebase获取数据,并使用useState挂钩将检索到的数据设置为状态。 我知道我的API调用有效,因为我可以记录来自Firebase的数据,但是当我使用setState()时,它没有最终出现在我的状态中,出现了一些问题,我最终只得到一个空数组在状态中。 我错过了什么?
const Collection = () => {
const [ dreams, setDreams ] = useState([])
useEffect(() => {
const retrieveCollection = (userId) => {
firebase.firestore().collection('Dreams')
.where('user', '==', userId)
.onSnapshot(snapshot => {
let newDreams = snapshot.docChanges()
newDreams.forEach(doc => {
console.log(doc.doc.data())
setDreams([...dreams, doc.doc.data()])
console.log(dreams)
})
})
}
retrieveCollection('N25c9lKITZQ7JtPEZSrMX6uC7Ot2')
}, [])
console.log(dreams)
中看到了什么? - Vencovsky