【发布时间】:2019-01-29 03:48:10
【问题描述】:
我是编程新手,如果我阅读官方文档,这会让我有点难以理解。
我正在阅读关于React Router 4 from here
在这篇文章中,作者谈到了<HashRouter>和<BrowserRouter>
这是他提到的:
HashRouter 基本上它使用 URL 中的哈希来呈现组件。由于我正在构建一个静态的单页网站,所以我需要使用它。
BrowserRouter,它使用 HTML5 历史 API 来渲染组件。历史可以通过 pushState 和 replaceState 进行修改。更多信息可以在这里找到
现在,我不明白两者的意义和用例,就像他说 历史可以通过 pushState 和 replaceState 修改并且 它使用哈希渲染组件的 URL
虽然第一个对 BrowserRouter 的解释对我来说完全是模糊的,但关于 HashRouter 的第二个解释也没有意义,比如为什么有人会在 url 中使用 Hash (#) 来渲染组件?
【问题讨论】:
-
您没有为现有答案提供反馈。由于他们已经直接回答了这个问题,因此有必要澄清这个问题需要什么样的关注。
-
评论stackoverflow.com/questions/56707885/…参考官方文章techiediaries.com/react/react-router-5-4-tutorial-examples/…。 “如果您使用的是可以处理动态 URL 的动态服务器,那么您需要使用 BrowserRouter 组件,但如果您使用的服务器仅提供静态文件,那么在这种情况下将使用 HashRouter 组件。”
标签: reactjs