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

时间:2020-03-17 04:34:04

标签: 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);
});

在这里需要明确的是,子子集合“项目”存在于我的某些子集合中,而尚未在其他子集合中创建。当我尝试使用上面的代码在已经具有其他“项目”的子集合中将文档添加到“项目”时,它将具有以下结果:

Document successfully written!

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

谢谢您的帮助!

要求更新屏幕信息

成功: enter image description here

失败: enter image description here

1 个答案:

答案 0 :(得分:2)

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

如果您说的是文档没有写好,那么听起来好像您在找错地方了。在网络浏览器中刷新Firebase或Cloud控制台有助于揭示新创建的集合。如果您确切地知道public class M{ private int[][] arr; public static void func(){ for(int i = 0; i < this.arr.length; i++){ // ^^^^ compiler does not like this } } } 的值在这里,也将很有帮助,因此您肯定知道在哪里看。