Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在UID下存储Firebase用户_Javascript_Firebase_Firebase Realtime Database_Firebase Authentication - Fatal编程技术网

Javascript 如何在UID下存储Firebase用户

Javascript 如何在UID下存储Firebase用户,javascript,firebase,firebase-realtime-database,firebase-authentication,Javascript,Firebase,Firebase Realtime Database,Firebase Authentication,我一直在使用push()方法将所有用户存储在firebase数据库中。此方法为每个用户生成一个唯一的id,并将其存储在此id下。我正在尝试更改此方法,以便将我的用户存储在user.uid下,而当您使用set()方法时,该user.uid也会自动生成,但是,我无法将其存储在此用户uid下 我正在使用以下命令向数据库添加用户,我在这里缺少什么 firebase.database().ref().child('accounts').set({ email: user.e

我一直在使用push()方法将所有用户存储在firebase数据库中。此方法为每个用户生成一个唯一的id,并将其存储在此id下。我正在尝试更改此方法,以便将我的用户存储在user.uid下,而当您使用set()方法时,该user.uid也会自动生成,但是,我无法将其存储在此用户uid下

我正在使用以下命令向数据库添加用户,我在这里缺少什么

firebase.database().ref().child('accounts').set({
                email: user.email,
                userId: firebase.auth().currentUser.uid

              })
它使用set()并按如下方式存储数据:

{
  "accounts" : {
      "email" : "",
      "userId" : ""
    },
{
      "email" : "",
      "userId" : ""
    }
}
使用push()时,结构如下所示: 根据firebase生成的推送Id存储用户

{
  "accounts" : {
    "-KRPSyO4B48IpBnHBTYg" : {
      "email" : "",
      "userId" : ""
    },
    "-KR4f4s5yvdr67g687nrth" : {
      "email" : "",
      "userId" : ""
    }
  }
我要找的是这种结构: 用户由firebase生成的用户ID存储

{
      "accounts" : {
        "userId value" : {
          "email" : "",
          "userId" : ""
        },
        "userId value" : {
          "email" : "",
          "userId" : ""
        }
      }

任何帮助都将不胜感激

您尚未为路径中的
uid
本身创建节点。将其更改为:

var uid = firebase.auth().currentUser.uid;
firebase.database().ref().child('accounts').child(uid).set({
  email: user.email,
  userId: uid
})

您尚未在路径中为
uid
本身创建节点。将其更改为:

var uid = firebase.auth().currentUser.uid;
firebase.database().ref().child('accounts').child(uid).set({
  email: user.email,
  userId: uid
})

这就是我需要的。谢谢你,弗兰克!这就是我需要的。谢谢你,弗兰克!