사용자가 생성되었을 때 사용자 정보를 저장하려하지만이 js 코드를 사용하면 방금 생성 한 사용자의 최초 등록 된 사용자 데이터가 사용됩니다.사용자 데이터를 Firebase에 저장하면 잘못된 사용자가 저장됩니다.
var ref = new Firebase("https://***.firebaseio.com/");
$('.btn').click(function(e) {
var isNewUser = true;
e.preventDefault()
var mail = $('#inputEmail').val();
var pass = $('#inputPassword').val();
ref.createUser({
email : mail,
password : pass
}, function(error) {
if (error === null) {
console.log("User created successfully");
} else {
console.log("Error creating user:", error);
}
ref.onAuth(function(authData) {
if (authData && isNewUser) {
ref.child("users").child(authData.uid).set(authData);
}
});
});
return false; //Extra insurance
});
위대한 답변! "onAuth 이벤트는 사용자가 로그인하면 시작됩니다." - 사실은 아니지만,'onAuth()'는 인증 상태가 바뀔 때마다 발생합니다. 리스너가 처음으로 연결되면 초기 상태 (아마도 'null')로 시작됩니다. – Kato