使用anchor标记使用反应路由器hashlocation链接到同一页面

时间:2015-09-04 15:20:53

标签: reactjs reactjs-flux react-router react-jsx

尝试使用锚标记链接到同一页面但是因为我正在使用如下所示的反应路由器HashLocation,路由器捕获它以防止锚定正常工作除了产生错误#34;没有路由匹配路径&#34 ;

Router.run(routes, Router.HashLocation, (Root) => { React.render(<Root/>, document.body); });

在下面的链接中提出了相同的问题,并提示使用&#34; HistoryLocation&#34;但我想坚持&#34; HashLocation&#34;那些链接没有提供具体的答案,因此需要帮助:

1)How to use normal anchor links with react-router 2)Using React-Router to link within a page

我想知道路由器中是否存在某种过滤器以排除某些哈希值,以便我可以使用默认的相同页面锚点链接。

2 个答案:

答案 0 :(得分:0)

使用HashLocation路由器的重点是使用#来处理路由,它是一个允许客户端导航的黑客,但实际上它是&#39;单页应用程序。

您的网址中不能有多个#,浏览器拥有多个网页是没有意义的。考虑到这一点,我认为你应该处理&#34;页面&#34;导航(但实际上你的整个网站都是&#34;在页面导航中#34;)你自己,也许只是使用一些jQuery(或纯javascript)代码滚动到指定的DOM id可能在一些钩子之后{ {1}}过渡。

答案 1 :(得分:0)

尝试这样的事情。

   sess := session.Clone()
   defer sess.Close()

   // make requests to Mongo