这是我的项目文件层次结构
RootTabNavigator
| AuthStackNavigator // I want to go back to this navigator
| AuthoScreen
| Welcome Screen
| MainTabNavigator // I want to reset MainTabNavigator
| FeedStacknavigator
| Screen A
| OtherStackNavigatorOne
| Screen E
| OtherStackNavigatorTwo
| Screen D
| MenuStackNavigator
| Menuo <-I'm here and want to reset to 'MainTabNavigator'
and go BACK to 'AuthScreen'
| Screen B
| Screen C
Run Code Online (Sandbox Code Playgroud)
用户在MenuStackNavigator和MainTabNavigator下的Menuo屏幕上.
如果用户没有令牌(当用户注销时),则用户返回到Auth Screen.
但同时我想重置MainTabNavigator.您可以卸载,执行NavigationActions.init()或其他任何操作.我更喜欢NavigationActions.init()
我只是想将MainTabNavigator设置为第一次.
如果没有令牌,我会回到Auth Screen(这是有效的)
This code if the part …Run Code Online (Sandbox Code Playgroud) reactjs react-native react-redux react-native-navigation react-navigation
就像Facebook,Instagram和任何其他移动应用程序一样,我想实现'回到Stacknavigator中的初始屏幕'
如果您不理解这个用例,请发表评论,我将为您绘制其状态流程
主TabNavigator上的图标代码.
navigationOptions: ({ navigation }) => ({
header: null,
tabBarIcon: ({ focused }) => {
const { routeName } = navigation.state;
....
return (
<TochableWithoutFeedback onPress={()=>{navigation.goback(iconName)}>
// undefined is not a function when I press the Button
// deeper screen. (not getting any error on Main)
<Ionicons
name={iconName}
size={30}
style={{ marginBottom: -3 }}
color={focused ? Colors.tabIconSelected : Colors.tabIconDefault}
/>
<TochableWithoutFeedback>
);
},
Run Code Online (Sandbox Code Playgroud)