如何导航到屏幕而不将其添加到堆栈?

时间:2020-07-09 19:47:23

标签: javascript react-native react-native-navigation

我的导航器是:

const MyStack = createStackNavigator();

const MyRoutes= () => (
  <MyStack.Navigator headerMode='none' initialRouteName='First'>
    <MyStack.Screen name='First' component={ScreenFirst} />
    <MyStack.Screen name='Second' component={ScreenSecond} />
  </MyStack.Navigator>
);

我的实际流量是:

First -> (next) -> Second -> (back) -> First

但是我想显示First路由而不将其添加到Backstack中,因此它将是:

First -> (next) -> Second -> (back) -> (default OS behavior)

有可能吗?如果是,怎么办?我正在使用"@react-navigation/native": "^5.6.1"

我知道我可以控制Second路线中的Back行为,但是由于在Android(Java / Kotlin)中可以显示一个Fragment而不将其添加到Backstack,所以我想React Native中也存在类似的情况。

1 个答案:

答案 0 :(得分:1)

您可以使用navigation.replace('Second')https://reactnavigation.org/docs/stack-actions#replace此处有更多信息。