reactjs - react-router-dom v5 的 useHistory 实例是什么?
问题描述
正如我们在 v5 中所知道的,react-router-dom
我们可以使用useHistory
钩子来获取历史对象。但是,如果我们有 SSR 并使我们的对象成为其中一种createMemoryHistory
方式createBrowserHistory
。
useHistory
会给我们什么实例?
解决方案
useHistory
非常简单:它history
从上下文中获取。
所以这取决于你如何制作你的SSR。如果你做对了(否则你的应用程序无论使用钩子都不会导航)采用useHistory
路由器()。useMemoryRouter
其他情况,由于某种原因,您同时拥有<MemoryRouter>
(<BrowserRouter>
但在不同的地方)。然后useHistory
将返回组件层次结构中最接近的一个。
推荐阅读
- angular - 如何有条件地在 Angular 2+ 中包含第三方 JS(基于环境)
- batch-file - PuTTY psftp 从部分名称获取文件
- hibernate - 基于类的投影 (DTO) id 不工作,但基于接口的投影工作
- php - 使多个单元并排fpdf
- rest - REST API 的 Junit 测试用例
- wordpress - 在 /blog 下创建带有链接的 WordPress 帖子
- android - 当我添加工具时发生了什么:replace="android:appComponentFactory"
- ajax - MVC 控制器从 ajax 接收空值
- karate - 尝试在 KARATE DSL 中进行后调用时如何解决“错误 com.intuit.karate - http 请求失败:null”?
- python-3.x - python程序找出音频文件中每个单词的开始和结束时间