Raf*_*res 5 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>
);
Run Code Online (Sandbox Code Playgroud)
我的实际流程是:
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>
);
Run Code Online (Sandbox Code Playgroud)
但我想显示First路线而不将其添加到后台堆栈,所以它是:
First -> (next) -> Second -> (back) -> First
Run Code Online (Sandbox Code Playgroud)
是否可以?如果是,怎么办?我在用"@react-navigation/native": "^5.6.1"。
我知道我可以控制路由中的 Back 行为Second,但由于在 Android (Java/Kotlin) 中可以显示 Fragment 而无需将其添加到 backstack,我想 React Native 中也存在类似的东西。
小智 3
您可以使用navigation.replace('Second')。更多信息请参见https://reactnavigation.org/docs/stack-actions#replace。