我正在尝试使用查询方法获取文档内的字段。但我不能,也没有收到任何错误(“可能查询响应为空”)
const chatId = "6042ff11-fe94-4e65-958b-80130d9e7108"
const docRef = collection(db, 'userGroups');
const q = query(docRef, where(`${chatId}`, "==", `${chatId}`));
// I also tried method below but I got no result
// const q = query(docRef, where(`${chatId}`, "==", `${chatId}`));
const gg = (await getDocs(q))
gg.forEach(doc => {
console.log(doc);
});
您正在查询与名称具有相同数据的字段名称。根据您的屏幕截图,这总是会返回空。
const q = query(docRef, where("6042ff11-fe94-4e65-958b-80130d9e7108", "==", "6042ff11-fe94-4e65-958b-80130d9e7108"));
在您的数据库中,“6042ff11-fe94-4e65-958b-80130d9e7108”字段中的值看起来有一些 JSON。你明白为什么这永远不会返回任何东西吗?您没有任何数据,其中密钥“6042ff11-fe94-4e65-958b-80130d9e7108”也包含数据“6042ff11-fe94-4e65-958b-80130d9e7108”。
我认为你不需要使用
where()
子句。您可以尝试选择:
const q = query(docRef, select(chatId));