首页 > 解决方案 > 试图从我在firebase中的数据库中获取当前用户名,但是却未定义

问题描述

如果我想获取当前用户的电子邮件地址,它正在工作,但对于其他数据的名称,它不是。也许我没有在火力库中正确保存数据,或者我不知道。

这是我在数据库中的注册:

document.getElementById('intrebari').addEventListener("submit", (e) => {
  e.preventDefault();

  const email = document.getElementById('Email');
  const nume = document.getElementById('NumeUtilizator');
  const parola = document.getElementById('ParolaInregistrare');
  const conf = document.getElementById('ConfirmareParola');
  const gen = document.getElementById('gen');
  const platforma = document.getElementById('platforma');
  const on_off = document.getElementById('on_off');
  const timp = document.getElementById('timp');

  firebase.auth().createUserWithEmailAndPassword(email.value, parola.value)
    .catch(function (error) {
      firebase.database().ref('utilizatori').push({
        Nume: nume.value,
        Email: email.value,
        Parola: parola.value,
        Gen: gen.value,
        Platforma: platforma.value,
        Online_Offline: on_off.value,
        Timp: timp.value,
        userID: firebase.auth().currentUser.uid,
        email: firebase.auth().currentUser.email

      }).then((cred) => {

        location.reload();
      });
      console.log(error.message);
      if (error.message === "The email address is badly formatted.") {
        $("#eroare_inregistrare").show().text("Introdu un email valid");
      }

      if (error.message === "The email address is already in use by another account.") {
        $("#eroare_inregistrare").show().text("Acest email este deja folosit.")
      }
    })
})

这就是我想获取当前用户名的地方:

function get() {
    firebase.auth().onAuthStateChanged(function (user) {
        if (user) {
            console.log(user.Nume);
        }
        else {
            console.log("no user is sign in");
        }
    });
}

标签: javascriptfirebase-realtime-databasefirebase-authentication

解决方案


推荐阅读