Хотя определенно возможно создать документ профиля пользователя с помощью облачных функций, как предлагают Renaud и guillefd, также подумайте о создании документа непосредственно из кода вашего приложения. Подход довольно похож, например, если вы используете электронную почту + пароль для входа:
firebase.auth().createUserWithEmailAndPassword(email, password)
.then(function(user) {
// get user data from the auth trigger
const userUid = user.uid; // The UID of the user.
const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.
// set account doc
const account = {
useruid: userUid,
calendarEvents: []
}
firebase.firestore().collection('accounts').doc(userUid).set(account);
})
.catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});
Помимо запуска непосредственно из веб-приложения, этот код также создает документ с UID пользователя в качестве ключа, что упрощает последующий поиск.