【问题标题】:React router show a page but don't add it to history反应路由器显示一个页面但不将其添加到历史记录
【发布时间】:2023-03-28 05:18:01
【问题描述】:

我有一个支付应用程序。我想在用户点击“支付”按钮后显示一个处理页面,然后在支付调用完成后呈现支付结果。

如果用户在支付结果页面点击返回按钮,他们应该返回支付页面。

问题是如果我只是将处理页面推送到浏览器历史记录中,当用户单击后退按钮时,他们会被带回处理页面。

我也试过replace(processingPage),但结果不是我想要的:它将浏览器中的/payment 替换为/processing。我需要的是浏览器历史记录中没有/processing

有没有办法用 React 实现这种行为?

更新 1

这不是我的代码。

另一种方法是在支付页面顶部呈现处理组件,但这需要大量代码更改。

我只是想知道是否可以使用 React 路由器进行上述操作。

【问题讨论】:

  • 为什么需要路由来做处理?

标签: javascript reactjs react-router


【解决方案1】:

尝试从处理页面执行replace(paymentComplete)

或者将处理屏幕置于模式中,并且根本不使其成为路线。

【讨论】:

    猜你喜欢
    • 2017-10-19
    • 2020-02-14
    • 2020-12-13
    • 1970-01-01
    • 1970-01-01
    • 2019-05-29
    • 1970-01-01
    • 2016-05-06
    • 2016-08-16
    相关资源
    最近更新 更多