Построение ответа Мишеля ...
Я, вероятно, добавлю, что вы можете использовать функции Firebase для создания документа и добавления его в коллекцию profiles
(используя Firestore или RTDB) при создании учетной записи.
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
export const userOnCreate: functions.CloudFunction<admin.auth.UserInfo> = functions.auth.user()
.onCreate((event: functions.Event<admin.auth.UserRecord>) => {
const user: admin.auth.UserRecord = event.data;
return admin.firestore().collection('profiles').doc(user.uid).set({
email: user.email, // or username
firstTimeSignedIn: false
});
});
Добавьте логическое значение для firstTimeSignedIn
и при входе запросите документ.Если он не существует (потому что функция не сработала достаточно быстро), вы знаете, что это происходит впервые.И если значение ложно, вы знаете, что это их первый раз.Однако после перенаправления вы можете set
значение со слиянием ...
firestore.collection('profiles').doc(uid).set({firstTimeSignedIn: true}, { merge: true });