gpt4 book ai didi

javascript - 无法获取 firebase 用户 ID

转载 作者:行者123 更新时间:2023-11-30 15:31:52 24 4
gpt4 key购买 nike

我是 firebase 和 Javascript 的新手,我尝试了很多方法通过用户 ID 获取用户数据存储,但我得到的只是数据存储在“未定义”下。

这是我的JS代码

function handleRegister() {
var fname = document.getElementById('fname').value;
var lname = document.getElementById('lname').value;
var email = document.getElementById('email').value;
var password = document.getElementById('password').value;
var ref = firebase.database().ref();
console.log(email);
console.log(fname);

if (email.length < 4) {
alert('Please enter an email address.');
return;
}
if (password.length < 4) {
alert('Please enter a password.');
return;
}

firebase.auth().createUserWithEmailAndPassword(email, password)
.then(function(user) {
var uid = user.uid;
var postData = {
Firstname: fname,
Lastname: lname,
email: email,
};
// Get a key for a new Post.
var newPostKey = firebase.database().ref().child('Users').push().uid;

var updates = {};
updates['/Users/' + newPostKey] = postData;
// updates['/user-posts/' + '/' + newPostKey] = postData;
return firebase.database().ref().update(updates);
})
}

我想做的是,在注册新用户后,我想将用户信息(即名字和姓氏)保存到数据库中,并保存在身份验证期间生成的各自 uid 下。但目前我无法获取 uid,新用户将替换之前在数据库中输入的用户,而不是作为新条目输入。

enter image description here

最佳答案

通过组合示例中的部分,您让事情变得有点复杂。

保存刚刚注册的用户需要这样:

firebase.auth().createUserWithEmailAndPassword(email, password) .then(function(user) {
var root = firebase.database().ref();
var uid = user.uid;
var postData = {
Firstname: fname,
Lastname: lname,
email: email
};
root.child("Users").child(uid).set(postData);
})

关于javascript - 无法获取 firebase 用户 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42125238/

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