有人知道如何在Firestore中使用onSnapshot函数吗? 我想如果条件满足,函数将离开并且数据库请求将退出。 该函数由onClick调用,第一步是在数据库中添加内容。第二步应该是,如果它已经在集合中,则在将信息添加到数据库中之后停止实时请求并停止函数。用户不应再注意到该功能了,这意味着不再需要数据库更新。我希望有人能帮助我。
db.collection('Requests').doc('lobby1').collection('1').add({
name: 'test',
createdAt: Date.now()
}).catch(err =>{
console.log(err)
})
let ref= db.collection('Requests').doc('lobby1').collection('1')
ref.onSnapshot(snapshot => {
console.log(snapshot.size)
if(snapshot.size >= 2){
console.log('Test');
}
}
)
答案 0 :(得分:1)
根据API文档,onSnapshot()返回
可取消订阅功能以取消快照侦听器。
并显示其用法示例。
const unsubscribe = ref.onSnapshot(snapshot => {
console.log(snapshot.size)
if(snapshot.size >= 2){
console.log('Test');
unsubscribe();
}
}