为什么我必须按返回键两次回到浏览器?



在我的react App中,当我打开一个弹出窗口(它改变了useHistory()的搜索对象)

将搜索的查询参数添加到URL中。(例:www.example.com ?查询=值)

然后当我关闭弹出窗口时,我清除了搜索历史对象:

const history = useHistory();
history.replace({ search: '' });

但是当我关闭弹出窗口并按下后退键后,我必须按两次才能返回。

我想按一下背部,而不是两次。(正常方式)

在打开弹出窗口时使用history.push(...)<Link to={{ search: '?query=value' }}>会在堆栈上创建额外的导航操作,这将导致不得不使用多个history.back()s。

使用history.replace(...)更改页面位置,而不是通过<Link to={{ search: '?query=value' }}>转发用户,然后更改历史记录,从而解决了这个问题。

相关内容

  • 没有找到相关文章

最新更新