首页 > 解决方案 > 子集合 ID

问题描述

我希望用户有项目,我希望项目有一个id由我的功能制作的项目。然后创建一个条件并显示一个项目。

产生这个错误,如果我离开auto id创建,那么一切都很好

 try {
 my function
     let id = new Date().valueOf();

    const res = await firestore
      .collection("Projects")
      .doc(userId).collection("project")
      .get();

   

    if (!res.data()) {
      firestore
        .collection("Projects")
        .doc(userId)
        .collection("project").doc(id)//my func id
        .add({
        
        data
        });
    } else {
      firestore
        .collection("Projects")
        .doc(userId)
        .collection("project").doc(id)//my func id
        .update({
        ...res.data().project, data
        });
    }

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

标签: reactjsfirebasegoogle-cloud-firestore

解决方案


如果您想使用您需要使用的自定义 ID 创建它.set(),而不是.add(). 基本上,我认为这样您将覆盖自定义分配的 id。它应该是这样的:

firestore
    .collection("Projects")
    .doc(userId)
    .collection("project").doc("YOUR_CUSTOM_ID")
    .set({

    data
    });

您可以在官方文档中找到有关添加数据的更多信息。


推荐阅读