如何突破querySnapshot forEach循环方法? [英] How to break out of the querySnapshot forEach loop method?

查看:40
本文介绍了如何突破querySnapshot forEach循环方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想打破forEach循环.考虑一下:

I want to break out of a forEach loop. Consider this:

db.collection('users').get().then(querySnapshot => {
        if (!querySnapshot.empty) {
            querySnapshot.forEach(doc => {
                let data = doc.data()
                if (data.age == 16) {
                    break //this is not working
                }
            })
        }
    }
)

文档并没有提及如何突破forEach循环

The documentation mentions nothing about breaking out the forEach loop

推荐答案

代替使用 forEach 直接在QuerySnapshot上,您可以迭代其 docs 属性,它只是一个普通的旧javascript数组.编写一个 for 循环,您可以根据需要 break :

Instead of using forEach on QuerySnapshot directly, you could iterate its docs property instead, which is just a plain old javascript array. Write a for loop, which you can break as needed:

for (var i in querySnapshot.docs) {
    const doc = querySnapshot.docs[i]
    if (make_some_decision_here) {
        break
    }
}

这篇关于如何突破querySnapshot forEach循环方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆