【发布时间】:2022-01-09 19:23:44
【问题描述】:
我对 Typescript 和 React 比较陌生。
按照教程,我正在尝试从"react-router-dom" 添加withRouter,但我收到错误消息Module '"react-router-dom"' has no exported member 'withRouter'.
react-router-dom node-modules 包中的任何地方都没有对withRouter 的引用。这让我很困惑,我不知道打字稿是否是缺少函数的起源。我知道他们已经删除了一些功能,但我找不到任何可以替换它的东西,以便从我的组件内部访问 this.props.history.push()。
任何人都可以就此提出建议吗?我做错了什么?
【问题讨论】:
-
您的
react-router-dom版本? -
副本解释了
withRouter发生的事情。要解决历史问题,您需要将类组件转换为函数组件,以便您可以使用useNavigate挂钩,或创建自定义withRouterHOC 替换并传入替换history对象的navigate函数. stackoverflow.com/questions/69899955/…
标签: reactjs typescript npm react-router-dom