将文档添加到 Firestore 中不存在的子集合

Ada*_*dam 5 javascript google-cloud-firestore

希望这不是太明显,但在这一点上我真的很难过。我无法将文档添加到 Firebase Firestore 中不存在的子集合。

添加到已经存在的子集合时,该代码可以完美运行。

db.collection("collectionId").doc(docId).collection("subcollectionId").doc(subdocId).collection("items").add({
    userName,
    isActive: true        
}).then(function() {
    console.log("Document successfully written!");
}).catch(function(error) {
    console.error("Error writing document: ", error);
});
Run Code Online (Sandbox Code Playgroud)

在这里要清楚,子子集合“项目”存在于我的一些子集合中,但尚未在其他子集合中创建。当我尝试在已经有其他“项目”的子集合中使用上述代码将文档添加到“项目”时,它会产生以下结果:

Document successfully written!
Run Code Online (Sandbox Code Playgroud)

当我尝试将文档添加到“items”不存在的子集合中的“items”时,它不会添加该项目并且没有任何内容写入控制台。

我在这里先向您的帮助表示感谢!

根据要求更新屏幕截图:

成功: 在此处输入图片说明

失败: 在此处输入图片说明

Dou*_*son 2

当您将文档写入任何不存在的集合或子集合时,它将立即存在。这种行为永远不会改变。如果没有实际编写文档,SDK 永远不会给您成功的指标。

如果您说该文档没有被写入,那么听起来您没有找对地方。在网络浏览器中刷新 Firebase 或 Cloud 控制台有助于显示新创建的集合。如果您确切地知道这里的值是什么,也会有所帮助subdocId,这样您就知道在哪里寻找。