我正在尝试使用云功能从Firestore获取多个文档。我正在使用打字稿,尝试将所有文档一一推送到对象数组中,然后在将所有文档都放入数组后,将其发送给客户端。但是在尝试在浏览器中运行它时出现错误“获取文档时出错:TypeError:无法读取未定义的属性'push'”。
以下是该函数的代码:
export const getMultiData = functions.https.onRequest((request, response)
=> {
let dataArray: object[];
const promise = admin
.firestore()
.collection("collection")
.get();
const p = promise.then(querySnapshot => {
querySnapshot.forEach(doc => {
dataArray.push(doc.data());
});
response.send(dataArray);
});
p.catch(error => {
response.status(500).send("Error getting documents: " + error);
});
});
答案 0 :(得分:0)
doc.data
是一种方法,而不是属性。您需要使用括号来称呼它。
dataArray.push(doc.data());