Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
firebase/firestore文档查询不工作-javascript_Javascript_Firebase_Google Cloud Firestore - Fatal编程技术网

firebase/firestore文档查询不工作-javascript

firebase/firestore文档查询不工作-javascript,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,由于firestore是新的,我在使用它时遇到了问题 我必须获取所有用户的集合,并遍历它。但它不起作用 db.collection("users").get().then(function(querySnapshot){ console.log(querySnapshot.data()); }); 它说: querySnapshot.data不是函数 和以下代码: callFireBase(mobileToCheck){ db.collection("users")

由于firestore是新的,我在使用它时遇到了问题

我必须获取所有用户的集合,并遍历它。但它不起作用

db.collection("users").get().then(function(querySnapshot){
      console.log(querySnapshot.data());
});
它说:

querySnapshot.data不是函数

和以下代码:

callFireBase(mobileToCheck){
        db.collection("users").where("mobile_no", '==', mobileToCheck).get().then(function(querySnapshot){
            if (querySnapshot.exists) {
                var userData = querySnapshot.data();
                var userId = querySnapshot.id;
                console.log(mobileToCheck + "Exist In DB");
            }else{
                console.log(mobileToCheck + "Do Not Exist In DB");
            }
        });
}
他总是在印刷

数据库中不存在923052273575

即使它存在,请参见下图以供参考。他们用这种方式告诉我


看起来您想对文档集合而不是一个文档调用
.data()
。请查看此代码是否有效:

db.collection("users").get().then(function(querySnapshot){
  querySnapshot.forEach(doc => {
     console.log(doc.data());
  });
}).catch(err => {
   console.log('Error getting documents', err);
});

您应该使用
docs.map
然后使用
doc.data()
。下面是如何使用
async await
语法在Firestore中实现这一点

import firebase from 'react-native-firebase'

async fetchTop() {
  const ref = firebase.firestore().collection('people')
  const snapshot = await ref.orderBy('point').limit(30).get()
  return snapshot.docs.map((doc) => {
    return doc.data()
  })
}