reactjs - 如何检查firebase中是否存在文档?
问题描述
如何检查 id 是否在我的 firebase 集合中?我需要检查 item.id 是否在包含多个 id 的集合“收藏夹”中。
如果它在内部,我需要分配一个值 true,如果没有具有相同 id 的值,我需要分配一个 false。
解决方案
据我所知,如果不实际获取文档,就无法“检查”集合中是否存在文档。当您尝试访问get
该文档时,它会返回一个doc
带有exists
变量的 -。
因此,您可以像这样检查文档是否存在(使用 Promises):
const doesDocExist = (docID) => {
return firestore().collection("cities").doc(docID).get().then((doc) => {
return doc.exists
})
}
//Call the function to check if doc exists:
let doesSanFranciscoExist = await doesDocExist("SF")
请注意,在上述函数中,您正在尝试获取带有 ID 的文档。
或者,如果您想通过一次读取检查是否存在多个文档,您可以使用 Cloud Functions 在数据库中的其他位置维护文档 ID 列表。
推荐阅读
- asp.net - ASP.NET Core 2 Razor 页面/实体框架 - 在帖子中设置必填字段
- java - 调查 jar 差异
- sql - 分析 SQL 查询 DBeaver
- javascript - 即使删除了 uglify 配置,Config 仍然继续 uglify js
- java - 处理消息时出现异常,Kafka Streams 无法恢复
- excel - VBA日期比较不起作用
- php - fosrestbundle 与 symfony 4/4.1 兼容吗?
- vba - 当“For Each x In arr”只有一个条目时出现错误
- spring - 在 Spring 中访问 POJO 类
- python-3.x - Google Vision API 无法使用 Text_Detection Type(OCR) 检测图像中大尺寸的数量。为什么它不起作用以及一些替代方法?