我正在使用Firebase和React来构建我从Firestore获得的FAQ部分。这些项目需要通过称为“order”的字段属性进行排序。一切都在模拟器中工作,但当我上线时,firebase要求我按照一个链接创建一个索引,我创建了索引,但之后网站上什么也没有出现,console.log
说有一个空数组,即使有数据。
useEffect(() => {
(async () => {
const colRef = collection(db, "FAQs");
const q = query(
colRef,
where("category", "==", "CustomerFAQs"),
where("adminPublish", "==", "true"),
orderBy("order")
);
const snapshots = await getDocs(q);
const docs = snapshots.docs.map((doc) => {
return doc;
});
setCustomerFAQs(docs);
console.log("CustomerFAQs: ", docs);
})();
}, []);
字符串
100d1x
的字符串
请让我知道我错过了什么。
1条答案
按热度按时间nmpmafwu1#
查询结果可能正确。您的筛选器与任何文档都不匹配。
您的查询过滤类别值“CustomerFAQs”,但您显示的文档包含一个小写“c”的差异净值“customerFAQs”。适当地更改查询或数据,您将获得一个匹配的文档。
如果查询无法使用索引,则查询将导致错误,而不是空文档集。