Cloud Firestore:一次性添加集合和子集合

时间:2019-07-10 22:08:43

标签: javascript firebase google-cloud-firestore

在阅读文档时,我看不出有一种明智的方法。

我正在尝试创建一个文档team和一个子文档member

我真正想要实现的是一种复杂的方式来构造对集合和子集合的读/写/更新。

async createTeam(newTeam, foundingTeamMember) {
    const teams = db.collection('teams');
    const teamRef = await db.collection('teams').add(newTeam);
    const memberRef = await teams.doc(companyRef.id)
      .collection('members').add(foundingTeamMember);

    return({
       teamId: teamRef.id,
       memberId: memberRef.id,
    });
}

特别是是否有一种无需使用异步/等待就可以返回teamIdmemberId的方法?

类似的东西:

  db
    .collection('teams')

    .add(newTeam)
    .collection('members')
    .add(foundingTeamMember).then(/* return collection parent ID */)

1 个答案:

答案 0 :(得分:0)

新文档的随机ID总是在客户端上生成。您可以在没有参数的CollectionReference上使用doc()方法,而无需实际添加文档即可生成对具有随机ID的文档的引用。然后,您可以立即使用该引用的id property,并在以后创建文档。