Firebase v3 Reference Guide indicates that createUserWithEmailAndPassword(email, password) returns firebase.Promise containing non-null fireb
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.