【发布时间】:2020-04-20 17:30:10
【问题描述】:
所以我正在构建一个云函数,它接受一个 customerID,根据 customerID 过滤文档并返回文档列表。可悲的是它返回一个空数组。我相信这是一个简单的修复。
这里是云功能:
export const getCalendarItems = functions.https.onCall(async (data, context) => {
const uid = data.uid;
if (context.auth) {
let array = [{}];
const ref = admin.firestore().collection("photoshoots");
const query = ref.where("customerID", "==", uid);
query.onSnapshot((querySnapshot) => {
querySnapshot.docs.forEach((documentSnapshot) => {
array.push({
...documentSnapshot.data(),
key: documentSnapshot.id,
});
});
});
return array;
} else {
return false;
}
});
这是我从客户端调用它时的代码。
const uid = auth().currentUser.uid;
functions()
.httpsCallable("getCalendarItems")({
uid: uid
})
.then(result => {
console.log(result.data);
});
这里还有一个 Firestore 的屏幕截图。
【问题讨论】:
标签: javascript firebase google-cloud-firestore google-cloud-functions