Метод onCreate
возвращает объект пользователя, а не событие с данными:
exports.AddAccount = functions.auth.user().onCreate(user => {
const userObject = {
displayName : user.displayName,
email : user.email,
photoUrl : user.photoURL,
createdOn : user.metadata.createdAt
};
return admin.database().ref('users/' + user.uid).set(userObject);
});
О другой ошибке. Не разрешено импортировать свойство со значением undefined
. Это должно быть либо определено, null
, либо не помещено вообще.
Причина, по которой вы получаете ошибку, заключается в том, что объект metadata
обладает свойством creationTime
.
Таким образом, чтобы быть в безопасности, вы можете сделать это следующим образом:
const userObject = {
displayName : user.displayName,
email : user.email,
photoUrl : user.photoURL,
createdOn : user.metadata.creationTime || null
};
Рекомендуется хорошо прочитать документацию и API, прежде чем нажимать новую функцию, это будет сэкономить время:)