有没有一种方法可以在不重新加载或更改历史记录的情况下更改URL?

时间:2018-04-20 13:46:09

标签: javascript reactjs redux react-router history

我有一个反应应用程序,用户单击一个按钮,然后返回一个随机项目,我想从该项目中取出一个属性并将其附加到URL。但是,我不希望页面重新加载。虽然我可以使用history.replace / history.push来更新URL,但问题是,如果用户单击回来,那么它们将返回到最后一页,该页面基于redux-store中的先前值正确呈现但URL会滞后。

例如,如果用户在myapp / item6上并点击后退按钮,则会返回到myapp / item5但URL不会更改以反映此情况。

目前,使用react-router和withRouter。

1 个答案:

答案 0 :(得分:0)

<Link 
  to={{ 
    pathname: '/somelocation',
    state: { from: props.location } 
  }}
/>

然后在你的后退按钮

<Link to={props.location.state.from}>
  Back
</Link>