【问题标题】:React-router - Hook useHistory Error: Cannot read property 'history' of undefinedReact-router - 挂钩 useHistory 错误:无法读取未定义的属性“历史”
【发布时间】:2020-03-27 06:41:05
【问题描述】:

我正在尝试使用来自 documentationreact-router-dom 的钩子 useHistory。

我不断收到此错误:TypeError: Cannot read property 'history' of undefined

这里是一个例子: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;

【问题讨论】:

标签: reactjs react-router


【解决方案1】:

useHistory 挂钩仅在 Route 内部有效。

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

【讨论】:

    猜你喜欢
    • 2020-02-01
    • 2020-11-24
    • 2019-07-25
    • 2021-12-04
    • 1970-01-01
    • 2020-10-03
    • 1970-01-01
    • 2023-03-17
    • 2023-04-10
    相关资源
    最近更新 更多