# #javascript #react-native #firebase-authentication
Вопрос:
const handleSignup = ()=>{
auth()
.createUserWithEmailAndPassword(email, password)
.then((cred) => {
console.log(cred);
firestore()
.collection('users')
.doc(cred.uid)
.set({
display_name:username
})
.then(() => {
console.log('User added!');
});
})
.catch(error => {
console.log(error.code);
if (error.code === 'auth/user-not-found') {
console.error('Invalid Email or password');
}else
console.error('Sorry an error occured');
});
};
Я использую приведенный выше код для хранения сведений о пользователе в firestore, и я хочу, чтобы документ совпадал с идентификатором учетных данных, который создается после аутентификации.Но идентификатор в документе полностью отличается от идентификатора cred.uid.Как это исправить?
Комментарии:
1. что делает
cred
консоль. отображение журнала? Я не уверен на 100%, но разве uid не хранится внутриcred.user.uid
? ( firebase.google.com/docs/auth/web/password-auth кажется, это говорит об одном и том же: использоватьcred.user
)2. Да, я виноват! Теперь это работает. Спасибо.
3. Звучит как ответ @Berci 👍 🙂
Ответ №1:
Правильный синтаксис cred.user.uid
(вместо cred.uid
). Для получения источника и дополнительной информации по этой теме проверьте документы проверки подлинности пароля firebase.
PS: На это уже был дан ответ в комментариях, но я также опубликовал ответ здесь, чтобы его было легче заметить (а также предположить, что на этот вопрос есть ответ. Спасибо @Frank van Puffelen за предложение).