typescript - 如何打破 Firestore 上的 querySnapshot?
问题描述
我需要打破 querysnapshot 循环。是否可以?
我尝试使用 for 循环。但下面的错误来了。
如何修复此错误或有什么方法可以打破快照循环?
代码
return query.get()
.then((snapshot) => {
for(const doc of snapshot) {
let data = doc.data()
if (data.age == 16) {
break;
}
}
错误
类型“QuerySnapshot”必须有一个返回迭代器的“Symbol.iterator”方法。
解决方案
您可以使用docs
QuerySnapshot 的属性,它返回 QuerySnapshot 中所有文档的数组。
例如,使用 for 循环:
return query.get()
.then((snapshot) => {
const snapshotsArray = snapshot.docs;
for (var i = 0; i < snapshotsArray.length; i++) {
const data = snapshotsArray[i].data()
if (data.age == 16) {
break;
}
}
}
或带有for-of
:
return query.get()
.then((snapshot) => {
const snapshotsArray = snapshot.docs;
for (const snap of snapshotsArray) {
const data = snap.data()
if (data.age == 16) {
break;
}
}
}
推荐阅读
- text-to-speech - 使用 google cloud api 时的计费/配额问题
- c++ - 错误 C2085:'int_fast63_t': 不在形式参数列表中
- android - 当我将 Kotlin 用于 Google Play 时,是否需要添加实现 'com.android.billingclient:billing-ktx:2.1.0'?
- android - 从其他包启动前台服务
- elasticsearch - Elasticsearch - 匹配嵌套对象数组中的所有子项
- android - 在 Android 中共享 pdf 文件时文件名未更改
- c++ - 写在向量中
带for循环 - javascript - 未使用的默认导出 - React Native
- sms - SMPP 协议中的节流错误出现在哪里?
- python - 使用证书和密钥将 curl 转换为 python 的问题