【发布时间】:2023-04-02 21:30:01
【问题描述】:
我正在尝试引用自动生成的 Firestore 文档 ID,以便我可以在其中创建子集合。
问题是,虽然我能够找到该文档 ID,但我似乎无法将其保存到可用的变量中。
在这里,我正在获取当前用户的特定文档。其中userDocs 中包含该文档 ID。 (getCollection 是我调用的可组合)
const { documents: userDocs } = getCollection("userData", [
"userId",
"==",
user.value.uid,
]);
每当我执行console.log(userDocs) 时,我都会得到这个包含所有文档信息的对象,包括文档id。
但是,当我尝试深入研究对象以获取 ID,例如 userDocs.value 或 userDocs.id 等,它只会返回 undefined。
如果我像这样在 html 中运行 v-for:
<div v-for="docs in userDocs" :key="docs.id">
<h1>{{ docs.id }}</h1>
</div>
在网页上吐出文档id没问题。
我正在尝试在此处注入该文档 ID,以便可以将 firebase 中的子集合添加到此特定用户文档。
const addNew = async (plant) => {
const userPlant = {
plant: plant,
planted: tempPlanted,
};
const res = await projectFirestore
.collection("userData")
.doc(userDocs) <--------HERE
.collection("plants")
.add(userPlant);
};
任何帮助将不胜感激。
【问题讨论】:
-
从哪里调用
addNew?你能从那里传递用户 ID 吗? -
addNew 只是绑定到提交按钮上的@click 事件。所以当我点击提交时,它会运行这个 addNew 功能
标签: javascript firebase vue.js google-cloud-firestore vuejs3