我对react路由器有一些奇怪的问题:
<Link to={{
pathname:
'/hols/tenerife/costa-del-silencio/alborada-beach-club.html',
query: { param1: 'true' }
}}>Go to page A</Link>
匹配
<Route path="/hols/:country/:area/:hotel" component={MyLayout} />
然而这与同一路线(它碰到我的404路线)不匹配:
<Link to="/hols/tenerife/costa-del-silencio/alborada-beach-club.html?param1=true">Go to page A</Link>
然后......当你尝试匹配哈希并尝试将字符串传递给to属性时,你会得到相反的结果。即:
<Link to="/hols/tenerife/costa-del-silencio/alborada-beach-club.html?param1=true#hashparam=true">Go to page B</Link>
符合这一点:
<Route path="/hols/:country/:area/:hotel?:foo#:bar" component={MyLayoutB} />
但这不是:
{{<Link to={
{
pathname: '/hols/tenerife/costa-del-silencio/alborada-beach-club.html',
query : { param1: 'true' },
hash : '#hashparam=true',
}}
>
Go to page B
</Link>}}
如果有人有反应路由器的经验,他们的帮助将非常感激。 这是预期的行为吗?我们遇到的问题是,当我们迁移到反应时,我们的路径名和搜索字符串需要保持不变,对于新功能,我们将匹配哈希参数。
请注意,页面刷新后,页面需要与路径匹配。目前在上面工作的那些,但是我有他们没有的实例并且去我的404反应路线。