如何在Firebase';s云火炉店
我按照文档说明了如何编写查询,但没有从中获得任何数据。数据库中已经填充了文档提供的示例 下面是我的代码如何在Firebase';s云火炉店,firebase,nosql,google-cloud-firestore,Firebase,Nosql,Google Cloud Firestore,我按照文档说明了如何编写查询,但没有从中获得任何数据。数据库中已经填充了文档提供的示例 下面是我的代码 var db = firebase.firestore(); var citiesRef = db.collection("cities"); var query = citiesRef.where("state", "==", "CA"); query.get().then(function(doc) { if (doc.exists) { console.log("Docume
var db = firebase.firestore();
var citiesRef = db.collection("cities");
var query = citiesRef.where("state", "==", "CA");
query.get().then(function(doc) {
if (doc.exists) {
console.log("Document data:", doc.data());
} else {
console.log("No such document!");
}
}).catch(function(error) {
console.log("Error getting document:", error);
});
如果我没有对它提出任何疑问,它工作得很好。例如(也来自文档):
两个请求的不同之处在于,在第二种情况下,您正在检索一个文档,该文档为您提供了一个包含
exists
属性和data()
方法的文档
在不工作的示例中,您执行了一个查询,该查询提供了一个与文档快照
不同的处理方法。您得到的不是单个文档,而是文档列表/集合。您可以使用empty
或size
属性检查是否检索到数据,然后使用forEach
方法或通过docs
数组查看结果:
var db = firebase.firestore();
var citiesRef = db.collection("cities");
var query = citiesRef.where("state", "==", "CA");
query.get().then(function(results) {
if(results.empty) {
console.log("No documents found!");
} else {
// go through all results
results.forEach(function (doc) {
console.log("Document data:", doc.data());
});
// or if you only want the first result you can also do something like this:
console.log("Document data:", results.docs[0].data());
}
}).catch(function(error) {
console.log("Error getting documents:", error);
});
两个请求的不同之处在于,在第二种情况下,您正在检索一个文档,该文档为您提供了一个包含
exists
属性和data()
方法的文档
在不工作的示例中,您执行了一个查询,该查询提供了一个与文档快照
不同的处理方法。您得到的不是单个文档,而是文档列表/集合。您可以使用empty
或size
属性检查是否检索到数据,然后使用forEach
方法或通过docs
数组查看结果:
var db = firebase.firestore();
var citiesRef = db.collection("cities");
var query = citiesRef.where("state", "==", "CA");
query.get().then(function(results) {
if(results.empty) {
console.log("No documents found!");
} else {
// go through all results
results.forEach(function (doc) {
console.log("Document data:", doc.data());
});
// or if you only want the first result you can also do something like this:
console.log("Document data:", results.docs[0].data());
}
}).catch(function(error) {
console.log("Error getting documents:", error);
});