Firebase v3 Reference Guide indicates that createUserWithEmailAndPassword(email, password)
returns firebase.Promise
containing non-null firebase.User
.
The Firebase v3 Authenticate with Firebase using Password-Based Accounts Guide shows the following example
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});
My question is, I want to fire a function which adds the user to my users
node in my Realtime Database. I want to include the users display name that I collected from the sites registration form. So, it seems like I want to do a .then
and if the createUserWithEmailAndPassword
method was successful I want to fire a function that writes the new user (with display name) to my Realtime Database users
node.
How do I modify the example script to a .then
style?
Here is the correct use of then()
and error handling with createUserWithEmailAndPassword
:
firebase.auth().createUserWithEmailAndPassword(email, password).then(function(user) {
var user = firebase.auth().currentUser;
logUser(user); // Optional
}, function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
});
function logUser(user) {
var ref = firebase.database().ref("users");
var obj = {
"user": user,
...
};
ref.push(obj); // or however you wish to update the node
}
I have another example here.
Check this, you need to read payload or snapshot(firebase term)
firebase.auth().createUserWithEmailAndPassword(credentials.email, credentials.password)
.then((authData) => {
console.log("User created successfully with payload-", authData);
//Write code to use authData to add to Users
}).catch((_error) => {
console.log("Login Failed!", _error);
})
Here's what I did and it worked.
function registerUsername(email,password,displayName){
firebase.auth().createUserWithEmailAndPassword(email, password).then(function(value) {
console.log(value);
}).catch(function(error) {
console.log(error);
});
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With