有没有办法清除react中的react历史记录?

问题描述 投票:0回答:2

我有一个针对移动用户的 Web 应用程序,但由于我们的客户不需要移动应用程序,因此它是使用 React 开发的。我已经使用 React Router 实现了应用内路由。我使用 useHistory 钩子,所以基本上使用历史对象进行导航。我想让应用内导航和浏览器导航保持同步。

现在的要求是我有一个付款页面。当用户完成支付程序时,用户不应返回到支付过程中涉及的任何页面。或者简单地,如果用户点击后退按钮,他应该登陆主页。所以我想到清除历史记录,这样用户就无法返回。但似乎没有办法做出反应来清除历史。

如果有人知道任何解决方案,请告诉我。

javascript reactjs react-router history
2个回答
0
投票

通常在购买流程中,您应该使用重定向(history.replace)来逐步浏览付款页面。如果用户按下后退按钮,那么他们将向后导航到他们进入“受限导航流程”之前所在的页面。 或者,您可以尝试使用

提示

用于在离开页面之前提示用户。当你的 应用程序进入应阻止用户的状态 导航离开(就像表单填了一半一样),渲染一个
<Prompt>


请参阅
防止转换

演示。 您可以使用它来捕获在“受限导航流”内进行后退导航的尝试,然后阻止导航或强制重定向到您选择的路线,即

history.replace("/")

将用户一路弹回到一个主页。

    


0
投票

<Link to="./../" > .... </Link>

navigate("./../")

© www.soinside.com 2019 - 2024. All rights reserved.