【发布时间】:2019-06-01 16:46:42
【问题描述】:
我创建了一个函数来与 firestore 数据库进行通信。 首先,检查关系中是否存在某些东西。如果没有,那么添加一些东西。 如果某些东西已经存在,则使用数据,然后删除查询关系中的条目。但是您必须在函数中添加它(其他部分)。现在问题出现了,当两个用户同时执行该功能时会发生什么。 有没有办法在第一个用户完成请求时将第二个用户放入队列中?
let ref = db.collection('relation1').doc('test').collection('user');
var checkForAdd = ref.get().then(snapshot => {
if(snapshot.size < 1){
db.collection('relation1').doc('test').collection('user').add({
user: 'Test',
createdAt: Date.now()
}).catch(err =>{
console.log(err)
})
}
【问题讨论】:
-
这正是transactions 的用途。
标签: javascript database firebase transactions google-cloud-firestore