获取文档后从 Firestore 获取文档 ID

Posted

技术标签:

【中文标题】获取文档后从 Firestore 获取文档 ID【英文标题】:Get document id from Firestore after fetching document 【发布时间】:2018-09-03 07:17:21 【问题描述】:

成功获取文档后如何获取 Firestore 文档的文档 ID。我正在从这样的 firestore 集合中获取用户数据

const ref = await db.collection('users').where('phone', '==', phone)
            .where('password', '==', password).get();

执行此查询后我有一个有效的文档。

const data = ref.docs[0].data();

如何获取自动生成的文档 ID?我试过data.iddata.path,它返回未定义。

如何访问自动生成的 id?

【问题讨论】:

【参考方案1】:

在我的代码中,它实际上是在尝试获取数据 ID,而不是文档 ID 我通过添加const docRefId = ref.docs[0].id;得到了文档ID

【讨论】:

【参考方案2】:

除了Sony's answer,您还可以获得文档参考

const docRefId = ref.docs[0].ref;

【讨论】:

以上是关于获取文档后从 Firestore 获取文档 ID的主要内容,如果未能解决你的问题,请参考以下文章

Firestore:获取在哪里找到的文档的子集合

Firestore - 如何在将文档添加到集合后获取文档 ID

Firestore - 如何在不真正获取所有文档的情况下找到可以使用查询获取的文档数量? [复制]

FIRESTORE - 如何在文档中获取集合的值?

将 Firestore 文档作为纯 Javascript 对象获取?

Firebase Firestore,在另一个文档中获取参考文档