【问题标题】:Alternative to foreach loop for Datasnapshot so I can exit loop when condition is met?替代 Datasnapshot 的 foreach 循环,以便在满足条件时退出循环?
【发布时间】:2021-03-10 19:46:12
【问题描述】:
我目前正在运行如下的 forEach 循环:
snapshot.forEach((theChild) =>
let newPostID1 = String(snapshoot.key);
let newUID = String(child.key);
//Spill coffee here.
})
ForEach 循环不允许您在满足条件后退出。
在满足条件后允许我返回(退出)快照的替代方法是什么?
【问题讨论】:
标签:
typescript
firebase
firebase-realtime-database
【解决方案1】:
您可以使用val() 在快照中获取包含整个数据集的 JavaScript 对象。然后,您可以随时使用带有for..in 和break 的标准JavaScript 对象属性迭代来迭代其键。
const val = snapshot.val()
for (const key in val) {
console.log(`child key: ${key}`)
console.log(`child value: ${val[key]}`)
// break whenever you want
}