Firebase Auth State Changes After Creating New User
Auth state changes when a new user is created with email and password. I implement firebase.auth().onAuthStateChanged() observable to watch login state in my app. But it have tool
Solution 1:
while creating the user using firebase.auth().createUserWithEmailAndPassword()
it will automatically logged out the current user and will logged into the newly created user.To avoid this you have to create the new user using admin sdk.
here is the sample code:
exports.createUser = functions.firestore
.document('user/{userId}')
.onCreate(async (snap, context) => {
try {
const userId = snap.id;
const batch = admin.firestore().batch();
const newUser = await admin.auth().createUser({
disabled: false,
displayName: snap.get('name'),
email: snap.get('email'),
password: snap.get('password')
});
const ref1 = await
admin.firestore().collection('user').doc(newUser.uid);
await batch.set(ref1, {
id: newUser.uid,
email: newUser.email,
name: newUser.displayName,
createdAt: admin.firestore.FieldValue.serverTimestamp()
});
const ref3 = await admin.firestore().collection('user').doc(userId);
await batch.delete(ref3);
returnawait batch.commit();
}
catch (error) {
console.error(error);
}
});
Post a Comment for "Firebase Auth State Changes After Creating New User"