node.js - Firebase where 查询
问题描述
我有一个问题,这是代码:
const firstName = "rick";
const users = await db.collection('user');
if (firstName != undefined) {
users.where("name", "==", firstName );
}
const snap = users.get();
为什么这个查询会返回包含所有对象的整个文档?如何基于where
可以为空或未定义的子句进行查询?谢谢你的帮助!
解决方案
您没有重新分配users
,因此它正在获取整个集合。尝试像这样重构:
let users: firebase.firestore.Query = db.collection('user');
//^ let instead of const
if (firstName) {
users = users.where("name", "==", firstName );
// ^^ updating original 'users' value
}
const snap = users.get();
推荐阅读
- html - 屏幕缩小时均匀拆分项目
- ssl - 由于错误 net/http: TLS 握手超时,kubelet 服务无法使用 https 访问端口 6443 的 kube-apiserver
- javascript - 你好我的功能有点问题我希望球不超过html的宽度
- c - 如何初始化一个结构数组?
- python - 重新网格并重新投影 NETCDF 以匹配 Geotiff - Python
- javascript - 将 handleTextChange 传递给反应原生元素自定义搜索栏组件
- outlook - 如何在 iOS 和 Android 上的 Outlook 上旁加载 Microsoft 加载项
- mongodb - 使用 mongodb 在 deno 中使用 Oak 发布请求
- snowflake-cloud-data-platform - 如何生成数据来测试 Snowflake 处理具有数千列的表的能力?
- python-3.x - 编译媒体管道有问题吗?