数据格式不正确

时间:2018-01-07 16:21:05

标签: javascript firebase firebase-realtime-database

我正在尝试将已创建用户的UserID发送到我的数据库。我想在数据库中引用userID内的数据。

关于这个问题,我不知道如何生成L2GIZ7Sx-e-AALSJp4g以及下面的其他内容。然后将UserID附加到此标识符。

The userID is the content of a data location

    firebase.auth().onAuthStateChanged(User => {
    console.log("user id: " + firebase.auth().currentUser.uid);
    var UserID = firebase.auth().currentUser.uid;
    var ref = firebase.database().ref("Users").push(UserID);
    console.log("user logged in");
    alert("You have been signed in");
});

我希望将数据存储为

+Users
   +userid
        data about user

谢谢。

1 个答案:

答案 0 :(得分:1)

当您在某个位置呼叫push()时,Firebase会在该位置下生成一个唯一密钥(屏幕截图中以-L开头的值)。

如果您想自己确定子节点的名称,则应使用child(...)代替push()

firebase.auth().onAuthStateChanged(User => {
    console.log("user id: " + firebase.auth().currentUser.uid);
    var UserID = firebase.auth().currentUser.uid;
    var ref = firebase.database().ref("Users").child(UserID).set(true);
    console.log("user logged in");
    alert("You have been signed in");
});

以上将节点的值设置为true,因为Firebase不会存储没有值的节点。