如何选择我要使用的 id 文档:
firebase.firestore().collection("Users").doc(firebase.auth().currentUser.uid).collection("tasks").add({task:task.taskname,category:task.category})
这里,我创建了一个随机id的文档,但我想选择一个(我的意思是收集任务中文档的id)
答案 0 :(得分:0)
someCollectionRef.add(/* data */)
是 someCollectionRef.doc().set(/* data */)
的别名。
所以要指定自己的 ID,只需使用:
yourCollectionRef.doc(/* your id */).set(/* your data */);
firebase.firestore()
.collection("Users")
.doc(firebase.auth().currentUser.uid)
.collection("tasks")
.doc(/* your custom ID here */)
.set({
task: task.taskname,
category: task.category
})
.then(() => console.log('success!'))
.catch((err) => console.error('failed to set doc data!', err));
要将文档 ID 放置在文档中,您可以将此链拆分为两部分,如下所示。除非您打算使用 Collection Group queries,否则您可以使用 FieldPath.documentId()
通过 ID 查询文档,而无需将其存储在文档中。
const myTaskDocRef = firebase.firestore()
.collection("Users")
.doc(firebase.auth().currentUser.uid)
.collection("tasks")
.doc(/* your custom ID here */);
myTaskDocRef
.set({
id: myTaskDocRef.id,
task: task.taskname,
category: task.category
})
.then(() => console.log('success!'))
.catch((err) => console.error('failed to set doc data!', err));
答案 1 :(得分:0)
使用 .add() 添加文档返回文档引用对象
因此使用文档 here 中的以下代码,这是您想要的代码:
// Add a new document with a generated id.
db.collection("cities").add({
name: "Tokyo",
country: "Japan"
})
.then((docRef) => {
console.log("Document written with ID: ", docRef.id);
})
.catch((error) => {
console.error("Error adding document: ", error);
});
docRef.id 保存您添加的文档的 ID。