DrawerNavigator中的StackNavigator:保留上一个路径并阻止返回初始屏幕

时间:2018-04-11 10:30:48

标签: react-native react-navigation

我为此创建了一个零食:https://snack.expo.io/HJebCIoiM

问题非常简单,但我在GH和SO上发现的大多数问题都是相反的行为:在DrawerNavigator中切换项目时将StackNavigator重置为初始路径。

应用程序结构

  • 抽屉
    • 路由器
      • 第一个屏幕
      • 第二个屏幕
    • 其他屏幕

初始路线为路由器,默认显示第一个屏幕

当前行为

  1. 我从第一个屏幕转到第二个屏幕
  2. 我切换抽屉
  3. 我转到抽屉里的另一个屏幕
  4. 我回到路由器
  5. 显示第一个屏幕
  6. 预期行为:

    在第5步中,它应显示第二个屏幕,因为这是我切换DrawerNavigator时的最后一条路线。

    我不明白它为什么不保留堆栈状态,只是让我回到之前的屏幕,而是将堆栈重置为其初始路径。

    让我更加困惑的是,许多人报告说这是他们应用的默认行为,但他们想要重置堆栈并且正在努力解决这个问题:

    我不明白为什么它会在我的情况下一直重置它。 (因为你应该可以用我在上面发布的Snack复制。

0 个答案:

没有答案