在Firebase中使用push()时如何获取唯一ID并将其存储在我的数据库中[重复]

2024-04-06

我正在 firebase 中推送数据,但我也想在我的数据库中存储唯一的 id 。 有人可以告诉我,如何使用唯一的 id 推送数据吗?

我正在尝试这样

  writeUserData() {
    var key= ref.push().key();
    var newData={
        id: key,
        websiteName: this.webname.value,
        username: this.username.value,
        password : this.password.value,
        websiteLink : this.weblink.value
    }
    firebase.database().ref().push(newData);
  }

错误是“ReferenceError:ref 未定义”


您可以使用该函数获取密钥key()任何 ref 对象的

有两种调用方式push在 Firebase 的 JavaScript SDK 中。

  1. using push(newObject)。这将生成一个新的推送 ID 并将数据写入具有该 ID 的位置。

  2. using push()。这将生成一个新的推送 ID 并返回对具有该 ID 的位置的引用。这是一个纯客户端 手术.

知道#2,您可以轻松地通过以下方式获得新的推送 ID 客户端:

var newKey = ref.push().key();

然后,您可以在多位置更新中使用此密钥。

https://stackoverflow.com/a/36774761/2305342 https://stackoverflow.com/a/36774761/2305342

如果您调用 Firebasepush()没有参数的方法,它是一个 纯客户端操作。

var newRef = ref.push(); // this does *not* call the server

然后您可以添加key()您的商品的新参考号:

var newItem = {
    name: 'anauleau'
    id: newRef.key()
};

并将该项目写入新位置:

newRef.set(newItem);

https://stackoverflow.com/a/34437786/2305342 https://stackoverflow.com/a/34437786/2305342

在你的情况下:

writeUserData() {
  var myRef = firebase.database().ref().push();
  var key = myRef.key();

  var newData={
      id: key,
      Website_Name: this.web_name.value,
      Username: this.username.value,
      Password : this.password.value,
      website_link : this.web_link.value
   }

   myRef.push(newData);

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Firebase中使用push()时如何获取唯一ID并将其存储在我的数据库中[重复] 的相关文章

随机推荐