[英]Uncaught TypeError: (0 , react_router_dom__WEBPACK_IMPORTED_MODULE_2__.useHistory) is not a function (React.js)
I use React Router Version 6<\/strong> then I ran this code below:我使用React Router 版本 6<\/strong> ,然后在下面运行此代码:
import { useHistory } from 'react-router-dom'
function Test() {
const history = useHistory();
history.push('/');
history.replace('/');
history.goBack();
}
Test();
For React Router Version 6 , use "useNavigate" instead of "useHistory" which is React Router Version 5 .对于React Router Version 6 ,使用“useNavigate”而不是React Router Version 5的“useHistory” 。
So replace your code ( React Router Version 5 ):所以替换你的代码( React Router Version 5 ):
import { useHistory } from 'react-router-dom'
function Test() {
const history = useHistory();
history.push('/');
history.replace('/');
history.goBack();
}
Test();
With this code ( React Router Version 6 ):使用此代码( React Router 版本 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();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.