【问题标题】:Forget Complete navigation history React Native忘记完整的导航历史 React Native
【发布时间】:2022-10-16 01:31:41
【问题描述】:

我正在构建一个涉及支付过程的反应本机应用程序,并在完成交易时将用户导航到主页,问题是用户可以返回到上一个屏幕,这不是我想要的。 我发现这个解决方案可以半途而废

navigation.replace("MainScreen");

因为即使它替换了前一个屏幕,它也会返回到另一个前一个屏幕。 有没有办法在我完成交易后忘记整个导航

【问题讨论】:

  • 你能分享你的导航堆栈结构吗?

标签: react-native navigation expo screen


【解决方案1】:

完成工作流程后,不要导航到MainScreen, 应该是这样的:

navigation.navigate('MainScreen')

尝试使用此代码:

navigation.reset( {
      index: 0,
      routes: [{name: 'MainScreen'}]
    })

请注意,使用此方法可能会稍有延迟(取决于导航堆栈上显示的屏幕数量)。

为了避免这种滞后,最好只删除与事务相关的屏幕,但是您说要忘记整个堆栈,所以这就是方法。

【讨论】:

    猜你喜欢
    • 2012-04-06
    • 2011-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-17
    • 2020-01-11
    • 2018-01-24
    • 2020-03-22
    相关资源
    最近更新 更多