Реагирующая кнопка возврата на первую страницу - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть ссылка со страницы «Тест» на страницу «TestDetails».но когда я щелкаю this.props.navigation.goBack (null) на странице «TestDetails», он выводит меня на первую страницу, которая «Домашняя» вместо «Тест».Вот мой index.js.Я действительно не знаю, как к этому пришли.Пожалуйста, что я делаю не так

const HomeScreen = createStackNavigator({
  Home: {
    screen: Home,

    navigationOptions: ({navigation}) => ({

    })
  }
});
const LoginScreen = createStackNavigator({
  Home: {
    screen: Login,

     navigationOptions: ({navigation}) => ({

    })
  }
});

const SignupScreen = createStackNavigator({
  Signup: {
    screen: Signup,

    navigationOptions: ({navigation}) => ({

    })
  }
});

const TestsScreen = createStackNavigator({
  Tests: {
    screen: Tests,
    navigationOptions: ({navigation}) => ({
      headerTitleStyle: {
        fontWeight: '400',
        color: '#333',
        fontFamily: 'Nunito-Regular',
        fontSize: 18
      },
      headerStyle: {
        elevation: 0, //remove shadow on Android
        shadowOpacity: 0, //remove shadow on iOS
        fontWeight: 400,
      },
      title: "Consumer tests",
      headerLeft:(<Icon.Button name="menu" size={35} 
backgroundColor="transparent" color="#2a486c" onPress={() => 
navigation.dispatch(DrawerActions.toggleDrawer())}>

              </Icon.Button>      
      ),
    })
  }
});

const TestDetailsScreen = createStackNavigator({
  TestDetails: {
    screen: TestDetails,
    navigationOptions: ({navigation}) => ({

    })
  }
});

const SettingsScreen = createStackNavigator({
  Settings: {
    screen: Settings,
    navigationOptions: ({navigation}) => ({
      title: "Settings",
      headerLeft:(<Icon.Button name="arrow-back" backgroundColor="transparent" color="black" onPress={() => navigation.dismiss()}>
                  <Text style={{fontSize: 15}}></Text>
              </Icon.Button>      
      ),
    })     
  },
});


const drawernav = createDrawerNavigator({
  Home: {
    screen: HomeScreen,  
  },
  Login: {
    screen: LoginScreen,  
  },
  SignUp: {
    screen: SignupScreen,  
  },
  Tests: {
    screen: TestsScreen,  
  },
  TestDetails: {
    screen: TestDetailsScreen,  
  },
  Settings: {
    screen: SettingsScreen,  
  },
},{
    contentComponent: SideMenu,
});

AppRegistry.registerComponent(appName, () => createAppContainer(drawernav));

Пожалуйста, что я делаю не так

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Я подтвердил определение react-native-navigation, как показано ниже фрагмент кода.goBack() и goBack(null) тоже самое, что и то же самое

0 голосов
/ 15 февраля 2019
const LoginScreen = createStackNavigator({

    Home: {

        screen: Login,

        navigationOptions: ({navigation}) => ({

        })
    }
})  

почему Дом: здесь?

Не могли бы вы добавить информацию с консоли или вы не получаете сообщение об ошибке или предупреждение?Не забывайте всегда ссылаться на официальные руководства https://facebook.github.io/react-native/docs/navigation

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...