reactjs - 设置 useHistory Hook 时无法读取未定义的属性 'history'

标签 reactjs electron react-hooks

我得到的错误是 Cannot read property 'history' of undefined .我已正确导入 useHistory()来自 react-router-dom 的钩子(Hook).

export const App = () => {
  
  /* Handle deep link navigation based on incoming myApp://entity/:entity_id call */
  const history = useHistory()

  const setLocationFromDeepLink = (path: string) => {
    history.push(`/${path}`)
  }

.......

最佳答案

请确保您使用的是来自 react-router-dom 的 BrowserRouter
因为 useHistory() 仅适用于 BrowserRouter。

import { BrowserRouter} from 'react-router-dom'
<BrowserRouter>
        ...
         Do logic here
        ...
 </BrowserRouter>

您可以从以下链接了解有关 react-router-dom 的更多信息
https://reactrouter.com/web/api/Hooks

关于reactjs - 设置 useHistory Hook 时无法读取未定义的属性 'history',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63242820/

相关文章:

javascript - 菜单未显示在桌面显示屏上

reactjs - 在Electron中捆绑的React应用中使用axios进行的API调用返回400

reactjs - 使用 useRef Hook "element.current"在 useEffect Hook 中为 null

reactjs - 如何通过更改 useState 来测试 React Hooks 组件

javascript - React Redux - 从 Immutable 渲染时, Prop 未定义

javascript - 优化bundle.js文件大小

javascript - AngularJS 作用域变量设置不正确

typescript - Electron + typescript + 网页包 : Boilerplate Example

javascript - 使用 react-responsive 动态设置 React Media Queries

javascript - Axios.catch 不捕获网络/控制台错误