#javascript #firebase #firebase-realtime-database
#javascript #firebase #firebase-realtime-database
Вопрос:
Я смотрел 10. Веб-учебник Firebase 2019 — Добавление данных в базу данных Firebase — Руководство по настройке учетной записи 09 на YouTube Я следил за каждым шагом, как и он, но это не помогло?
// Checking t0 update info
$("#btn-update").click(function(){
var fName = $("#fname").val();
var sName = $("#sname").val();
var uName = $("#uname").val();
var country = $("#country").val();
var phone = $("#phone").val();
var gender = $("#gender").val();
var rootRef = firebase.database().ref().child("Users");
var userID = firebase.auth().currentUser.uid;
var usersRef = rootRef.child(userID);
if(fName != "" amp;amp; sName != "" amp;amp; uName != "" amp;amp; country != "" amp;amp; phone != "" amp;amp; gender != ""){
var userData = {
"firstName": fName,
"secoundName": sName,
"userName": uName,
"country": country,
"phone": phone,
"gender": gender,
};
usersRef.set(userData, function(){
if(error){
var errorCode = error.code;
var errorMassage = error.message;
console.log(errorCode);
onsole.log(errorMassage);
window.alert("Message : " errorMassage);
}else{
window.location.href="post.html";
}
});
}else{
window.alert("Form is incomplete.! Please fill out all field.");
}
});
Комментарии:
1. Вы должны поделиться некоторыми сообщениями об ошибках здесь, чтобы люди могли вам помочь. Что именно не сработало?
2. Ошибка была «Неперехваченная ошибка: ошибка Reference.set: первый аргумент содержит неопределенное значение в свойстве ‘Users.ji8A7TkSldfdvieDqGxko9eV3Jy1.gender’ »
Ответ №1:
Хорошо, я отвечу на основе вашего комментария: «Ошибка была «Неперехваченная ошибка: ошибка Reference.set: первый аргумент содержит неопределенное значение в свойстве ‘Users.ji8A7TkSldfdvieDqGxko9eV3Jy1.gender’ «
Эта ошибка возникает из-за того, что firebase не принимает никаких значений как «неопределенных». В вашем случае вы получаете undefined в поле «пол». Вы должны каким-то образом проверить свои данные, прежде чем отправлять их в firebase. Например, вы могли бы сделать это:
var userData = {
"firstName": fName||'',
"secoundName": sName||'',
"userName": uName||'',
"country": country||'',
"phone": phone||'',
"gender": gender||'',
};
Или вы можете проверить свои данные каким-либо другим способом перед отправкой.