[英]Firestore get all documents (contain subcollections) from a root collection
[英]Firestore return all documents in collection at the root
在我的 firestore 数据库的根目录下,我有一个“用户”和“帐户”collections。每当我尝试返回这些集合中的任何一个中的所有文档时,我都会收到错误消息(那里肯定有数据):
未捕获(承诺)FirebaseError:Null 值错误。 对于“列表”@ L59,Null 值错误。 对于“列表”@ L63,Null 值错误。 对于“列表”@ L76
产生上述错误的代码:
const query = fs.query(
fs.collection(firestore, 'accounts'),
);
const querySnapshot = await getDocs(query);
querySnapshot.forEach((doc) => {
console.log(doc.id, ' => ', doc.data());
});
如果我尝试从任何子集合中返回所有文档,它工作正常:
const query = fs.query(
fs.collection(firestore, `accounts/${accountId}`, 'sites'),
);
const querySnapshot = await getDocs(query);
querySnapshot.forEach((doc) => {
console.log(doc.id, ' => ', doc.data());
});
任何想法为什么会这样,我查询错了吗? 这可能与 firestore 规则有关吗?
塔。
如果其他人遇到此问题,我已经找到了原因。
我只是禁用了 firestore.rules 中的所有规则(由其他人创建)并添加了一个通用规则以在经过身份验证后访问所有文档:
match /{document=**} {
allow read, write: if request.auth != null;
}
然后这停止了错误并列出了所有文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.