gpt4 book ai didi

javascript - 如何获取写入Firebase的数据的Key/Id?

转载 作者:行者123 更新时间:2023-11-28 18:10:08 25 4
gpt4 key购买 nike

我有一个存储员工记录的应用程序,它存储员工 ID,但也需要每个员工有一个本地 ID,当我们使用 push 将数据推送到数据库时,我想使用 Firebase 生成的 ID () 充当每个员工的内部 ID。这是变更管理所必需的。

我的代码:

function submit()
{


var dsRef=new Firebase("https://dataretrievaltest-28983.firebaseio.com/EmployeeDB/EInfo");

var name=document.getElementById('Name').value;
var eid=document.getElementById('EID').value;
var email=document.getElementById('Email').value;

dsRef
.push(
{
Name:name,
EID: eid,
Email: email,
}
);

var pushid=dsRef.name;
console.log("name:"+pushid);
console.log(name);
console.log(eid);
console.log(email);

}

上述代码的输出:

name:function (){S("Firebase.name() being deprecated. Please use Firebase.key() instead.");D("Firebase.name",0,0,arguments.length);return this.key()}
savekey.html:104 Djoko
savekey.html:105 0143
savekey.html:106 Djoko@dept.com

已使用 Key 代替 name,因为 name 已弃用,但未获取 key ,而是返回一个函数。

用键代替名称的代码

var pushid=dsRef.key;
console.log("name:"+pushid);

更改后的输出:

name:function (){D("Firebase.key",0,0,arguments.length);return this.path.e()?null:me(this.path)}
savekey.html:104 Caroline
savekey.html:105 0192
savekey.html:106 caroline@dept.com

我需要 key ,即 -Kb5...:如下面的 Json 所示

"EInfo" : {
"-Kb5UunYfq-8zd_Jc2Nd" : {
"EID" : "0134",
"Email" : "Parker@dept.com",
"Name" : "Parker"
},
"-Kb5V9xHhzVix6BNRM78" : {
"EID" : "1024",
"Email" : "sanchez@dept.com",
"Name" : "sanchez"
}
}

可用属性(键/名称)未提供所需的输出。请告诉我如何找回 key 以及我是否丢失了任何内容。

也尝试过

var pushid=dsRef.child("EInfo").push().key;
console.log("name:"+pushid);

它没有给出预期的结果。

name:function (){D("Firebase.key",0,0,arguments.length);return this.path.e()?null:me(this.path)}
savekey.html:104 camila
savekey.html:105 0172
savekey.html:106 camila@dept.com

最佳答案

您使用的是 Firebase SDK 2.x 版,但混合了 3.x 版的语法。对于 Firebase 2.x,获取 key 的语法是:

var pushid=dsRef.key();
console.log("name:"+pushid);

如果您现在要创建此应用,则确实应该使用 Firebase 3.x SDK,在这种情况下,语法确实为 dsRef.key(不带括号)。

更新

您似乎正在寻找刚刚使用 push() 创建的项目的键。您可以通过将 push 的结果分配给变量来实现:

var newRef = dsRef.push({
Name:name,
EID: eid,
Email: email,
});
console.log(newRef.key()); // or newRef.key when using SDK version 3.x

关于javascript - 如何获取写入Firebase的数据的Key/Id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41799884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com