Userproider
Userproider
import {
createUserWithEmailAndPassword,
signInWithEmailAndPassword,
signOut,
onAuthStateChanged,
} from "firebase/auth";
import { auth, firestore } from "../firebase";
import { createUserDocument } from "../firebase";
import { doc, getDoc } from "firebase/firestore";
import { getAuth } from "firebase/auth";
import { browserSessionPersistence, setPersistence } from "firebase/auth";
useEffect(() => {
const unsubscribe = auth.onAuthStateChanged((currentUser) =>
setUser(currentUser || null)
);
return () => unsubscribe();
}, []);
return (
<UserContext.Provider value={{ createUser, user, logout, signIn }}>
{children}
</UserContext.Provider>
);
};
// componentWillUnmount = () => {
// console.log("UserProvider componentWillUnmount was called");
// this.unsubscribeFromAuth();
// };
// render() {
// console.log("UserProvider render was called");
// const { children } = this.props;
// const { user, loading } = this.state;
// //if (loading) return <div>Loading...</div>;
// return <UserContext.Provider value={user}>{children}</UserContext.Provider>;
// }
// }
// export default UserProvider;