从 'react-router-dom 的历史记录中删除特定条目

Delete a particular entry from history in 'react-router-dom

考虑这种情况。用户从 Page1(/page1) 移动到 Page2(/page2) 再到 page3(/page3) 。现在,如果他按下后退按钮,显然他会转到第 2 页(/第 2 页)。

但是我如何从历史记录中删除 Page2(/page2) 条目,以便在从 Page3(/page3) 单击后退按钮时将他带到 Page1(/page1)

使用history.replace(page3)。 它将在第 2 页的适当位置插入第 3 页。如果您返回,它将带您到第 1 页

如果您知道不想返回第 2 页,则可以在离开第 3 页时替换历史记录中的第 2 页。您可以使用 <Link to={url} replace /> if there is a link, or you can use history.replace(url) 执行此操作。 (你可以import history from 'history',它是'react-router-dom'的子依赖。)

如果您只知道在到达第 3 页后不想返回,我不知道有什么干净的方法可以删除历史记录中的先前条目。