Я пытаюсь войти в систему с помощью Google в моем приложении React / Firebase. Я следовал учебнику на YouTube (https://www.youtube.com/watch?v=umr9eNbx3ag), но результаты разные. Когда я нажимаю кнопку «Войти», меня перенаправляют в Google, выбирают учетную запись, а затем перенаправляют на мой сайт.
Кажется, что мое утверждение «if» никогда не выполняется, auth.currentUser
никогда не оценивается как true.
Это мой файл Firebase
firebase.initializeApp(firebaseConfig)
export const firestore = firebase.firestore()
export const auth = firebase.auth()
export const provider = new firebase.auth.GoogleAuthProvider()
export const signInWithGoogle = () => auth.signInWithRedirect(provider)
export const signOut = () => auth.signOut()
export default firebase
Это мой логин
import { auth, signInWithGoogle, signOut } from '../../Firebase/Firebase'
const LoginOrRegister = () => {
const { username, setUsername, idToken, setIdToken } = useContext(Context)
useEffect(() => {
auth.onAuthStateChanged(async nextUser => {
if (auth.currentUser) {
setIdToken(await auth.currentUser.getIdToken())
setUsername(auth.currentUser.displayName)
} else {
setIdToken(null)
}
})
}, [])
return (
<div>
<LogInForm>
<button onClick={signInWithGoogle}> Log in with Google </button>
</div>
)