共计 283 个字符,预计需要花费 1 分钟才能阅读完成。
底层原理不一样
BrowserRouter
使用的是 H5 的history
API,不兼容 IE9 及以下版本HasRouter
使用的是 URL 的哈希值
url 表现形式不一样
BrowserRouter
的路径中没有#
,例如:localhost:3000/dome/test
HasRouter
的路径中包含#
,例如:localhost:3000/#/dome/test
刷新后对路由的 state
参数的影响
BrowserRouter
没有任何影响,因为state
保存在history
对象中HasRouter
刷新后会导致路由state
参数的丢失
HasRouter
可以用于解决一些路径错误相关的问题
正文完