Я работаю над приложением реагирования и неожиданно наткнулся на эту проблему. Я установил соединения с Firebase, и пользователи могут войти в систему, но когда они входят в систему, случается так, что displayName превращается в displayName недавно зарегистрированного пользователя. Это было не так раньше. Но я думаю, что-то не так с моим кодом, но я просто не могу понять это. Или кто-нибудь думает, что это из Firebase ?? Вот мой код:
// Регистрация события onSubmit
handleSubmit = (e) => {
e.preventDefault();
const signupInfo = {
userName: this.state.userName,
email: this.state.email,
password: this.state.passOne
}
Firebase.auth().createUserWithEmailAndPassword(signupInfo.email, signupInfo.password)
.then(() => {
this.props.registerUsername(signupInfo.userName)
})
.catch(error => {
if(error.message !== null) {
this.setState({errMsg: error.message})
}else {
this.setState({errMsg: null})
}
})
}
// registerUsername props.
registerUsername = username => {
Firebase.auth().onAuthStateChanged(FBUser => {
FBUser.updateProfile({
displayName: username
}).then(() => {
this.setState({
user: FBUser,
userName: FBUser.displayName,
userID: FBUser.uid
})
navigate('./mainhub')
})
})
}
// Вход в событие onSubmit.
handleSubmit = e => {
e.preventDefault();
let signupInfo = {
email: this.state.email,
password: this.state.password
}
Firebase.auth().signInWithEmailAndPassword(signupInfo.email, signupInfo.password).then(() => {
this.props.registerUsername(signupInfo.userName)
})
.catch(error => {
if(error.message !== null) {
this.setState({errMsg: error.message})
}else {
this.setState({errMsg: null})
}
})
}
Пожалуйста, кто-нибудь думает, что у меня проблема с моим кодом?