我想在 react-router-component 中使用基于哈希的路由,所以我将hash
属性添加到<Locations>
组件中,如下所示:
<div id="page-wrapper">
<Locations hash>
<Location path="/" handler={HomePage} />
<Location path="/movies/" handler={MoviesPage} />
<Location path="/movies/:id" handler={MoviePage} />
</Locations>
</div>
我链接到这样的位置:
<li><Link href="/">Home</Link></li>
<li><Link href="/movies/">Movies</Link></li>
我还尝试在组件中手动包含主题标签Link
(我找不到它记录了如何链接到基于哈希的路由)。
<li><Link href="/#/">Home</Link></li>
<li><Link href="/#/movies/">Movies</Link></li>
问题是,无论哪种方式,react-router-component 都没有响应点击链接。它正在更新浏览器中的 url,但它没有切换以呈现在 Location 中定义为处理程序的组件。
当我手动访问 url 时,例如http://localhost:8082/#/movies/,正在呈现正确的组件,但同样,我仍然无法导航。
此外,如果我hash
从 中删除该属性,则<Locations>
链接到路由将再次按预期工作。