2016-04-22 47 views
0

我想創建Link s修改散列而不更改路徑名,就像`做。例如: -如何使用「react-router」鏈接在當前位置添加/修改哈希?

mysite.com/page--link navigate-->mysite.com/page#foo

the docs,我應該這樣寫:

<Link to="foo">

但這就像<a href="/#foo">;它會清除路徑,然後應用散列。

如何使用Link修改當前URL處的散列?

(注意:我我可以手動使用在render - 時間解析window.location和前置一個我<Link to=但是,這聽起來很愚蠢)

回答

0

啊,錯過了說,文檔的一部分:

(相對路徑不支持)

因此,我想答案是這樣的:

<Link to={ this.props.location.pathname + "#foo" }>

鑑於當前組件訪問history.location。在我的情況下,我可以從父組件傳入它,所以這個工作。

¯\_(ツ)_/¯

打開,如果他們存在什麼更好的答案...

+0

相對路徑是在方法[這裏](https://github.com/ryanflorence/react-router-relative-links ),如果該WIP解決了,[應該被帶入'react-router'核心](https://github.com/reactjs/react-router/issues/2172)。 – ericsoco