Я пытаюсь аутентифицироваться с помощью firebase в реакции. Это компонент, который отслеживает мое состояние аутентификации.
import { useState} from "react";
function useAuth(fbAuth) {
const [isAuthenticated, setIsAuthenticated] = useState(false);
const createEmailUser = (email, password) => fbAuth.createUserWithEmailAndPassword(email, password);
const signInEmailUser = (email, password) => fbAuth.signInWithEmailAndPassword(email, password);
const signOut = fbAuth.signOut();
fbAuth.onAuthStateChanged(async user=> {
if (user) {
await setIsAuthenticated(true);
console.log(isAuthenticated, "should be true")
return
} else {
await setIsAuthenticated(false);
console.log(isAuthenticated, "should be false")
return
}
});
return {isAuthenticated, createEmailUser, signInEmailUser, signOut};
}
export default useAuth
Журналы консоли, когда я нажимаю кнопку входа, имеют вид
2useAuth. js: 13 false "должно быть истина"
2useAuth. js: 17 false "должно быть false"
2useAuth. js: 17 true "должно быть false"
4useAuth. js: 17 false " должно быть ложным "