2016-06-20 3 views
6

추가 데이터 전화 번호와 주소를이 데이터 세트에 어떻게 추가 할 수 있습니까? 그것은 Firebase 문서가 그것에 대해 아무것도 지정하지 않는 것 같습니다.firebase.auth()에 추가 정보를 추가하는 방법

//Email Login 
firebase.auth().signInWithEmailAndPassword(email, password).then(
    ok => { 
     console.log("Logged in User",ok.user);    
    }, 
    error => { 
     console.log("email/pass sign in error", error); 
    } 
); 

등록 :

//Sign Up 
firebase.auth().createUserWithEmailAndPassword(email, password).then(
    ok => { 
     console.log("Register OK", ok); 
    }, 
    error => { 
     console.log("Register error", error); 
    } 
) 

업데이트 :

나는 firebase.auth()

로그인을 사용하여 로그인, 등록 및 업데이트를 구현 한

//User Authentication firebase.auth().onAuthStateChanged(function(user) { if (user) { $scope.data=user; } else { // No user, Redirect to login page } }); //Save Function $scope.save=function(values){ $scope.data.updateProfile({ displayName: "Test User", email: "[email protected]", /* phone: 123412341, address: "Temp Address",*/ photoURL: "www.example.com/profile/img.jpg" }).then(function() { // Update successful. }, function(error) { // An error happened. }); }; 
+0

하시기 바랍니다 도움이되기를 바랍니다 사용자의 데이터를 검색 할 수 once()을 사용할 수 있습니다 다른 사람들이 해결책을 알 수 있도록 문제를 해결하십시오. 또한 질문이 있으시면 알려 주시기 바랍니다 :) –

+0

이것은 좋은 구현입니다. http://stackoverflow.com/questions/32151178/how-do-you-include-a-username-when-storing-email- and-password-using-firebase-ba –

+0

예, Firebase 구현입니다. 그러나 다음 속성들로만 제한됩니다. https://firebase.google.com/docs/reference/ios/firebaseauth/interface_f_i_r_user#properties 나는 내 대답에 댓글에 게시 링크에서 이것에 대해 이야기합니다.) –

답변

3

내가 아는 한 Firebase에서 제공하는 기본 사용자보다 많은 필드를 원할 경우 사용자 프로필을 직접 관리해야합니다.

모든 사용자 프로필을 유지하기 위해 Firebase에서 참조를 생성 할 수 있습니다.

users: { 
    "userID1": { 
    "name":"user 1", 
    "gender": "male" 
    }, 
    "userID2": { 
    "name":"user 2", 
    "gender": "female" 
    } 
} 

당신은 사용자가 로그인 할 때 감지하는 onAuthStateChanged을 사용할 수 있으며,이 경우 당신은

firebaseRef.child('users').child(user.uid).once('value', callback) 

대답한다면, 그것은

+0

현재 이것은 좋은 해결책입니다. 하지만 같은 더 나은 솔루션이 있는지 알고 기꺼이 것입니다 –

+1

이것은 이것을하는 제안 된 방법입니다. 더 나은 솔루션은 귀하의 필요에 더 잘 맞는 솔루션이 될 수 있습니다. 데이터를 검색하는 방법에 따라 데이터를 구조화해야합니다. 예를 들어, 정보 비밀을 유지하려면 "userId": { "credit-card": "0000", "public": { "name": "Devid", "genere": "dragon" }}} 보안 규칙을 사용하여 다른 사용자가 "공개"노드 만 읽을 수있게하십시오. 희망이 도움이 :) 나는 다른 질문에 여기에있다 –

+0

이 답변은 도움이 될 수 있습니다 : http://stackoverflow.com/a/37420701/4695325 –

관련 문제