首页 > 解决方案 > 文档 Firebase React 上的 onSnapshot

问题描述

onSnapshot我想使用函数获得实时数据。问题是我想将它放在我拥有的 ID 的特定文档上。我试过这个:

const getMembers = () => {
  db.collection('wydarzenie').doc(props.event_id).onSnapshot(snapshot => {
    console.log(snapshot.docData())
  })
}

但我得到了snapshot.docData不是函数的错误

我也试过这个:

const getMembers = () => {
    db.collection('wydarzenie').where('id' , '==', props.event_id).onSnapshot(snapshot => {
        console.log(snapshot.docChanges())
    })}

但是我的文件中并没有他的身份证...

我想在数组上有实时监听器uczestnicy- 在wydarzenie集合中,但我不知道该怎么做。我的数据库看起来像: 照片

标签: reactjsfirebasegoogle-cloud-firestore

解决方案


当您收听单个文档时,回调的参数是DocumentSnapshot. 要获取其数据,您需要调用data()它。

所以:

const getMembers = () => {
  db.collection('wydarzenie').doc(props.event_id).onSnapshot(doc => {
    console.log(doc.data())
  })
}

另请参阅 Firebase 文档以侦听文档的实时更新


推荐阅读