【发布时间】:2020-06-28 10:38:37
【问题描述】:
我有以下功能,我已经在我的 firebase 项目中实现并部署到我的云功能,但在执行时,它会导致我在 firebase 控制台的功能日志中出现错误;
> TypeError: Cannot read property 'profileImgUrl' of undefined
我理解它产生的错误的含义,但我不明白为什么我的用户变量会未定义
下面是函数:
exports.eventInvites = functions.firestore
.document('Events/{eventId}').onCreate((snap, context) => {
const eventData = snap.data();
const eventId = context.params.eventId;
const invitees = eventData.invitees;
let user;
db.doc(`Users/${eventData.createdBy}`).get().then(doc => {
var data = doc.data();
user = data; // updated user data but still get undefined
return user;
}).catch(error => {
console.log(error.message);
});
if (invitees !== undefined || invitees.length > 0) {
invitees.forEach(invitee => {
db.collection('Users').doc(invitee).collection('feed').doc().set({
date: new Date(),
image: user.profileImgUrl, // error occurs here, says user is undefined
summary: `${user.firstName} ${user.lastName} invited you to an event`,
extraText: `${eventData.eventName}: ${eventData.eventDetails} `,
extraImages: [
eventData.eventImgUrl
]
}).catch(error => {
console.log(error.message)
});
});
}
});
【问题讨论】:
标签: reactjs firebase google-cloud-firestore google-cloud-functions