我正在尝试使用documentation的react-router-dom中的hook useHistory。
我一直收到此错误:TypeError:无法读取未定义的属性“ history”
下面是一个示例:https://codesandbox.io/s/twilight-meadow-bwnt8?fontsize=14&hidenavigation=1&theme=dark
import React from 'react';
import { useHistory } from "react-router-dom";
function HomeButton() {
let history = useHistory();
function handleClick() {
history.push("/home");
}
return (
<button type="button" onClick={handleClick}>
Go home
</button>
);
}
function App() {
return (
<HomeButton />
);
}
export default App;
答案 0 :(得分:2)
useHistory
钩子仅在路由内起作用。
这是将历史对象传递到useHistory
挂钩的路由。这就是为什么在这种情况下它是未定义的-没有将历史对象传递给它的途径。