【问题标题】:React-Navigation: Navigation goback()React-Navigation:导航 goback()
【发布时间】:2018-12-01 20:55:51
【问题描述】:

屏幕 - X - 儿童(屏幕 A、屏幕 B)

屏幕 - A - 儿童(屏幕 A、屏幕 B、屏幕 C)

我已从 X -> A -> A 导航。此处屏幕数据已从 Redux StoreSCREEN - A 呈现。当我 goBack() 未呈现前一个屏幕时。在 React Navigation 中导航回来时,上一个屏幕没有被渲染。因为第一个 SCREEN-A 所需的数据已被第二个呈现的 SCREEN-A 覆盖。如何做到这一点?

信息:没有 Redux 集成的 React Navigation V2。

【问题讨论】:

  • 为什么 A 既是屏幕又是子项?甚至是它自己的孩子?

标签: react-native redux react-navigation


【解决方案1】:

您可以使用StackActionsNavigationActions 来操作历史记录。

例如:

const resetAction = StackActions.reset({
  index: 1,
  actions: [
    NavigationActions.navigate({ routeName: 'X' }),
    NavigationActions.navigate({ routeName: 'A' }),
  ],
});
this.props.navigation.dispatch(resetAction)

那你就可以照常回去了。

编辑:

我可能误解了你的问题。如果您使用 2 个导航器,其中包含多个屏幕,则应将它们与 createSwitchNavigator 结合使用,以获得单个导航以跳过父导航器。

【讨论】:

    猜你喜欢
    • 2019-03-02
    • 2017-10-12
    • 1970-01-01
    • 2018-04-08
    • 2020-12-25
    • 1970-01-01
    • 1970-01-01
    • 2022-06-25
    • 2021-11-26
    相关资源
    最近更新 更多