【发布时间】:2021-01-01 16:31:49
【问题描述】:
我正在开发一个 React Native 应用程序并正在使用反应导航的 stacknavigator,这是我的场景:
- 我有一个组件 A 作为堆栈导航器,其中包含屏幕 B(和其他)。
- 单击 A 中的按钮导航到 B
- 单击 B 中的按钮导航到 B(这次使用新数据)
- 点击第二个 B 的默认后退按钮导航到 A。这是我的问题,因为我想回到第一个 B 检查我的 stacknavigator 配置,如果我错过了额外的配置,请纠正我,谢谢。
<AppStack.Navigator
initialRouteName="HOME"
screenOptions={stackStyle}>
<AppStack.Screen
name="HOME"
component={A}
/>
<AppStack.Screen
name="B"
component={B}
/>
....
B内:
const {navigation} = this.props;
navigation.navigate('B', {new data for second B});
编辑:忘了提到第一个 B 从 webview 触发第二个 B
【问题讨论】:
-
当你点击按钮 B 时,我能看到你在做什么吗?你是否尝试从 B 屏幕执行类似 navigation.navigate('B') 的操作?
-
完全是@HichamELBSI
-
在我看来,你不应该这样做。您应该使用状态更新或仅使用此屏幕所需的组件重新渲染屏幕。
-
好的,从同一个屏幕调用的问题类型是什么?不做是个好习惯?
-
navigation.replace('screenA')
标签: react-native react-navigation