【发布时间】:2021-12-04 16:17:23
【问题描述】:
async function process_tasks() {
let campaignsRef = db.collection('campaigns')
let activeRef = await campaignsRef.where('active', '==', true).select().get();
for (campaign of activeRef.docs) {
console.log(campaign.id);
(CHOICE 1) let tasksRef = await campaignsRef.doc(campaign.id).collection('tasks').get();
(CHOICE 2) let tasksRef = await campaign.collection('tasks').get();
for(task of tasksRef.docs) {
console.log(task.id, task.data())
}
}
}
当我使用 (CHOICE 2) 时,"documentRef" 不是有效的 DocumentReference 错误显示。
我的代码中没有名为 documentRef 的变量(作为对那些的注释评论错误的人)
我想知道为什么? campaign 不应该等于 campaignsRef.doc(campaign.id)?
【问题讨论】:
-
您的代码中没有变量
documentRef(如错误中所述)。您确定错误来自此代码吗? -
变量
documentRef在哪里?你能发布整个错误吗? -
据我所知
campaign是documentRef。我认为你不能在documentRef上使用.collection。 @FrankvanPuffelen -
错误消息说有一个名为
documentRef的变量应该是DocumentReference类型。该代码没有名为documentRef的变量,因此是我的问题。 -
@FrankvanPuffelen 我可以知道为什么你认为我的代码有一个名为 documentRef 的变量吗?
标签: javascript firebase google-cloud-firestore