Uso React Router Version 6 y luego ejecuté este código a continuación:
import { useHistory } from 'react-router-dom' function Test() { const history = useHistory(); history.push('/'); history.replace('/'); history.goBack(); } Test();Pero tengo este error:
TypeError no detectado: (0, react_router_dom__WEBPACK_IMPORTED_MODULE_2__.useHistory) no es una función
¿Hay algún error en mi código?
Para React Router Versión 6 , use "useNavigate" en lugar de "useHistory", que es React Router Versión 5 .
Así que reemplace su código ( React Router Version 5 ):
import { useHistory } from 'react-router-dom' function Test() { const history = useHistory(); history.push('/'); history.replace('/'); history.goBack(); } Test();Con este código ( React Router Versión 6 ):
import { useNavigate } from 'react-router-dom' function Test() { const navigate = useNavigate(); navigate('/'); // Equivalent to "history.push('/');" navigate('/', { replace: true }); // Equivalent to "history.replace('/');" navigate(-1); // Equivalent to "history.goBack();" } Test();