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
Javascript Firebase firestore查询未返回数据_Javascript_Firebase_Google Cloud Firestore - Fatal编程技术网

Javascript Firebase firestore查询未返回数据

Javascript Firebase firestore查询未返回数据,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,我正在查询firestore数据库以获取工作空间ID。但是,snapshot.empty计算结果为true,即使我可以在firestore仪表板中看到具有正确ID的文档。我对数据库的查询有误吗?结果是console.log(“没有匹配的文档”) 短暂性脑缺血发作 编辑 在本例中,team_id的值是“T015KLJHGV9”,它是一个字符串。当我用typeof workspaceID检查workspaceID时,它的值也是一个字符串 您可以试试: 异步函数my_func(工作空间ID){ co

我正在查询firestore数据库以获取工作空间ID。但是,
snapshot.empty
计算结果为true,即使我可以在firestore仪表板中看到具有正确ID的文档。我对数据库的查询有误吗?结果是
console.log(“没有匹配的文档”)

短暂性脑缺血发作

编辑

在本例中,
team_id
的值是“T015KLJHGV9”,它是一个字符串。当我用
typeof workspaceID
检查workspaceID时,它的值也是一个字符串

您可以试试:

异步函数my_func(工作空间ID){
console.log(工作空间ID);
db.collection('工作区')
.where('newWorkspace.team_id','=',workspaceID)
.get()
。然后((快照)=>{
控制台日志(快照);
如果(!snapshot.exists){
console.log('没有匹配的文档');
返回;
}  
})
.catch((err)=>console.log(“获取wsID的文档时出错,”,err))

};谢谢-我试过这个,结果也一样
snapshot.exists
的计算结果为
undefined
,这就是为什么if语句仍然是triggeredsnapshot.forEach((doc)=>{console.log(doc.data());})在这种情况下不会打印任何内容-可能是因为它是一个空数组?条件必须是:。where('newWorkspace.team_id','==',workspaceID'))Firestore的查询相等条件是类型敏感的,因此请尝试此
。其中('team_id','=',parseInt(workspaceID,10))
请编辑问题以显示您尝试查询的数据。如果我们看不到您的查询实际上与您的数据相匹配,那么我们就无能为力。我们需要知道您正在使用的workspaceID的值,以及应该匹配的特定文档。
async function my_func(workspaceID) {
    console.log(workspaceID);
    db.collection('workspaces')
      .where('team_id', '==', workspaceID)
      .get()
      .then((snapshot) => {
        console.log(snapshot);
        if (snapshot.empty) {
            console.log('No matching documents.');
            return;
        }  
      })
      .catch((err) => console.log("Error fetching doc for wsID, ", err))
};