Помните, что firebase auth сохраняет только следующие данные:
email: 'user@example.com',
emailVerified: false,
phoneNumber: '+11234567890',
password: 'secretPassword',
displayName: 'John Doe',
photoURL: 'http://www.example.com/12345678/photo.png',
disabled: false
Таким образом, user.userName не существует.
Вы можете использовать displayName для сохранения имя пользователя, но если вы действительно используете его для сохранения имени, вы можете создать узел с именем users в базе данных реального времени firebase, где вы можете сохранить имя пользователя на основе UID, что-то вроде этого:
users
->akdjf231dkeimdla
->username: jamesbond007
После того, как ваш код может быть :
var user = firebase.auth().currentUser;
if(user != null ){
var email_id = user.email;
var uid = user.uid;
var name = user.displayName;
document.getElementById("user_para").innerHTML = "Welcome User : " + email_id;
document.getElementById("user_para1").innerHTML = "Welcome User : " + uid;
document.getElementById("user_para2").innerHTML = "Welcome User : " + name;
firebase.database().ref('/users/' + uid).once('value').then(function(snapshot) {
//Here are reading the username from the database
var username = snapshot.val().username;
});
}
Если вы используете базу данных реального времени firebase, не забудьте добавить библиотеку базы данных реального времени firebase.
Для получения дополнительной информации: https://firebase.google.com/docs/auth/admin/manage-users