У меня есть нижеприведенная функция, которую я реализовал и применил к своим облачным функциям в моем проекте 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)
});
});
}
});