一、模块““react-router-dom””没有导出的成员“useHistory”?
在 React Router v6 中,useHistory 已被替换为 useNavigate。
useNavigate 是一个 React Router v6 中的新 Hook,用于在 React 组件中进行路由的导航。与 useHistory 不同的是,useNavigate 返回的是一个函数,而不是一个对象。这个函数可以接受一个字符串参数,表示要导航到的路径,还可以接受一个可选的对象参数,表示导航的其他选项,例如替换当前路由、在历史记录中前进或后退等
代码如下(示例):
import { useNavigate } from 'react-router-dom';
function MyComponent() {
const navigate = useNavigate();
const handleClick = () => {
navigate('/new-route');
};
return (
<div>
<button onClick={handleClick}>Go to new route</button>
</div>
);
}
注:useNavigate 只能在 React Router v6 中使用,如果你的项目中使用的是 React Router v5 或更早的版本,你需要继续使用 useHistory