El error principal está en la función useEffect , es un error de lanzamiento.
estaba creando una aplicación de chat web siguiendo este yt - https://www.youtube.com/watch?v=Bv9Js3QLOLY&list=PL4nE3wz01AwBbgaAMROTVrhE4aTFRJx7x&index=8
http://localhost:3000/static/js/main.chunk.js:356:7
ver fuente (el error es)
353 | Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(() => { 354 | _firebase__WEBPACK_IMPORTED_MODULE_2__["auth"].onAuthStateChanged(user => { 355 | setUser(user); > 356 | setLoading(false); 357 | ^if (user) history.push('/Chats'); 358 | }); 359 | }, [user, history]);ver compilado
useEffect(() =>{ auth.onAuthStateChanged((user) =>{ setUser(user); setLoading(false); if(user) history.push('/Chats'); }) },[user ,history]);Y TODO EL CÓDIGO ESTÁ ABAJO
import { useHistory } from 'react-router-dom'; import { auth } from '../firebase'; const AuthContext = React.createContext(); export const useAuth =() => useContext(AuthContext) ; export const AuthProvider =({ children }) =>{ const[loading, setLoading] = useState(true); const[user, setUser] = useState(null); const history = useHistory(); useEffect(() =>{ auth.onAuthStateChanged((user) =>{ setUser(user); setLoading(false); if(user) history.push('/Chats'); }) },[user ,history]); const value = { user }; return( <AuthContext.Provider value={value}> {!loading && children} </AuthContext.Provider> ); }Su useEffect debería devolver una función, que React ejecutará cuando desmonte el componente. Afortunadamente, ese es precisamente el tipo de función que devuelve auth.onAuthStateChanged , por lo que puede hacer:
return auth.onAuthStateChanged((user) =>{ ...Creo que su useEffect está arrojando un error porque lo está ejecutando cada vez que cambia el historial y dentro de useEffect está cambiando el historial, por lo que crea un bucle y eso es un error, comente el error aquí para que sea más fácil ayudar a alguien.