Я пытаюсь обновить данные учетной записи пользователя в firebase, но я заметил, что значение ввода для одного из моих полей продолжает отображаться как неопределенное, даже когда я его console.log.Я работаю с двумя файлами, один из которых - файл loginjs, в котором я определяю пользовательский ввод.
signUpForm.addEventListener('click', function (e) {
e.preventDefault();
isSigningUp = true;
var email = signUpEmailInput.value;
var password = signUpPasswordInput.value;
var displayNameUser = displayNameInput.value;
var userPrivateKey = signUpPrivateKey.value;
var user = firebase.auth().currentUser;
var photoURL = "https://www.gravatar.com/avatar/" + md5(email);
if (signUpPasswordInput.value !== signUpPasswordConfirmInput.value) {
setSignUpError('Passwords do not match!');
} else if (!displayNameUser) {
setSignUpError("Display Name is required!");
} else if (!userPrivateKey) {
setSignUpError('You need to set a Private Key!');
} else {
auth.createUserWithEmailAndPassword(email, password)
.then(function (user) {
user.updateProfile({
displayName: displayNameUser,
photoURL: photoURL,
privateKey: userPrivateKey
}).then(function () {
// Update successful.
window.location.href = 'chat.html';
}).catch(function (error) {
// An error happened.
window.alert("Some unexpected error happened!");
});
user.sendEmailVerification().then(function () {
// Email sent.
}).catch(function (error) {
// An error happened.
window.alert("Email was not able to send!");
});
})
.catch(function (error) {
// Display error messages
setSignUpError(error.message);
});
}});
Странно то, что пользовательский ввод для моего отображаемого имени и photoURL работает нормально, но когдаприходит на мой пользовательский ввод с закрытым ключом, регистрирует ввод при переходе на страницу чата, и я делаю console.log (user.privatekey). Он говорит, что он не определен.
В моем файле chatjs, когда яЯ выдвигаю всю информацию профиля пользователя.Файл chatjs в основном позволяет пользователю отправлять сообщение, сообщение и всю информацию профиля пользователя, сохраненную в базе данных firebase.
messages.push({
displayName: displayName,
userId: userId,
pic: userPic,
text: myString.toString(),
privatekey: user.privatekey,
timestamp: new Date().getTime() // unix timestamp in milliseconds
})
.then(function () {
messageStuff.value = "";
})
.catch(function (error) {
windows.alert("Your message was not sent!");
messageStuff;
});
Дело в том, что приватный ключ вообще не сохраняется,чего я не понимаю, так как он регистрирует пользовательский ввод в файле loginjs, но когда я захожу в файл chatjs, он продолжает говорить, что значение undefiend.Я везде гуглил и до сих пор не нашел решения.Любая помощь будет очень ценной!