我刚开始制作一个使用Cloud Firestore作为数据库的简单网站。当用户添加新数据时,我让firestore自动生成文档ID(作为图像)。现在,我想获取该文档ID,但是对此我一无所知。这是我的代码:
db.collection("todos").add({
content: input.value,
name: name.value,
time_update: time
})
.then(function(docRef) {
console.log("Document written with ID: ", docRef.id);
return documentId = docRef.id // i try to do this but it does not return the documentID outside this promise
})
.catch(function(error) {
console.error("Error adding document: ", error);
});
当我在承诺之外使用console.log(documentId)时,它返回“未定义”。请帮忙,谢谢!
答案 0 :(得分:1)
您无需等待回调。您可以立即获得一个随机ID:
const docRef = db.collection("todos").doc()
const id = docRef.id
然后使用set()
添加数据:
docRef.set(...)
随机ID是在客户端而非服务器上生成的。