You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Firebase Firestore中获取文档ID?已查询数据但未获取ID

获取Firestore文档ID的修改方案

你当前的代码仅提取了文档的原始数据(通过doc.data()),而文档ID存储在每个doc对象的id属性中。只需修改map回调函数,将ID与文档数据合并即可:

修改后的核心代码:

const ref = query(
  collection(db, "vehicles"),
  where("type", "==", "motorbike")
);
onSnapshot(ref, (categories) =>
  setMotorList(categories.docs.map((doc) => ({
    id: doc.id,
    ...doc.data() // 展开文档的所有字段
  })))
);

说明:

  • 遍历每个文档时,创建一个新对象,先添加id字段并赋值为doc.id
  • 使用ES6展开运算符...将doc.data()返回的所有数据字段合并到新对象中
  • 最终motorList中的每个元素都会包含id和对应文档的所有数据字段,后续可通过item.id直接访问文档ID

内容的提问来源于stack exchange,提问作者emirryhn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 05:33:21