React-router-Hook useHistory错误:无法读取未定义的属性“ history”

时间:2019-12-02 15:57:42

标签: reactjs react-router

我正在尝试使用documentationreact-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;

1 个答案:

答案 0 :(得分:2)

useHistory钩子仅在路由内起作用。

这是将历史对象传递到useHistory挂钩的路由。这就是为什么在这种情况下它是未定义的-没有将历史对象传递给它的途径。