我正在尝试从与下面的字段/属性值之一匹配的集合中获取一些文档
if(uid !== ''){
try{
const questions:any = []
const appColRef = db.collection("sessions"); // best practice to use "ColRef" instead of just "Ref"
const querySnapshot = await appColRef.get().where("uid", "==", uid)
querySnapshot.forEach((doc:any) => {
let data:any
data = doc.data()
questions.push(data.message)
});
logger.log("all questions are:", questions)
}catch(err){
console.log("Failed to fetch sessions:", err)
}
}
我如何收到错误
Failed to fetch sessions: TypeError: appColRef.get(...).where is not a function
我正在使用第 2 代 Firebase 函数,如下
import {onRequest} from "firebase-functions/v2/https";
import * as logger from "firebase-functions/logger";
const { initializeApp } = require('firebase-admin/app');
const { getFirestore } = require('firebase-admin/firestore');
const { getFunctions} = require("firebase-admin/functions");
initializeApp();
const db = getFirestore
你应该这样做
const querySnapshot = await appColRef.where("uid", "==", uid).get();
appColRef.where("uid", "==", uid)
定义了一个 Query
,您可以在其上调用 get()
方法。