React-Router:将我的url从hashHistory重定向到browserHistory

时间:2017-04-06 15:29:04

标签: javascript .htaccess reactjs redirect react-router

我最近对我的代码进行了更改,以便在我的React-Router中使用browserHistory而不是hashHistory。虽然我工作的网站的某些用户可能已使用哈希为URL添加了书签。

旧网址看起来像www.mywebsite.com/#/page?query=param,我想确定是否有人为其添加了书签,它会被重定向到www.mywebsite.com/page?query=param

看起来.htaccess无法进行此重定向,所以我想知道最干净的方法是什么?

感谢。

1 个答案:

答案 0 :(得分:-1)

在您的主要组件中,您可能会通过调用{this.props.children}来呈现this.props.location.pathname您可以访问当前网址,如果网址包含哈希,您可以删除它并重定向用户他们想去的网址。

这仅在用户首次从其他任何地方返回您的网站时起作用,但如果他们已经在您的网站上并使用书签转到网站的其他地方,我认为这不会起作用。原因是主组件的componentDidMount仅在初始加载或实际页面刷新时触发。

希望这有帮助。