从实时数据库中检索currentUser数据

时间:2019-10-24 17:35:09

标签: javascript jquery firebase-realtime-database firebase-authentication

我在访问存储在实时数据库中的当前用户数据时遇到麻烦,我可以从用户对象获取信息,但是在存储在数据库中的其他数据库中什么也没有。我相对较新,这是我第一次使用Firebase身份验证。[

btnSignup.on("click", function (e) {
    event.preventDefault();
    console.log("clicked");
    email = txtEmail.val();
    password = txtPassword.val();
    auth = firebase.auth();

    // check for real email
    promise = auth.createUserWithEmailAndPassword(email, password);
    promise.catch(console.log(e.message));
    txtPassword.val("");
    txtEmail.val("");

    userDisplayName = $("#displayName-input").val();

    dietVal = $("input[name='diet']:checked").val();

    database.ref("users/" + userId).set({
        userId: userId,
        userEmail: userEmail,
        displayName: userDisplayName,
        dietVal: dietVal
    });
});

// Logout button click
btnLogout.on("click", function (e) {
    console.log("logged out");
    firebase.auth().signOut();
    $("#navbarDropdown").hide();
});

// User state change if else functions

firebase.auth().onAuthStateChanged(function (firebaseUser) {
    if (firebaseUser) {
        console.log(firebaseUser);
        $("#dropdown-text").text(firebaseUser.email);
        $("#navbarDropdown").css({
            "display": "block"
        });
        $("#signup-login-button").css({
            "display": "none"
        });

        userId = firebaseUser.uid;
        userEmail = firebaseUser.email;
        userDisplayName = firebaseUser.displayName;

        console.log(firebaseUser.uid);

        //pushing to firebase to save user data.
        // Save changes button click
    }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

1

0 个答案:

没有答案