web-dev-qa-db-fra.com

Comment définir une itinéraire d'écran par défaut dans l'onglet React Navigation dans React natif

Je veux charger le tableau de bord pour que l'onglet actif dans l'onglet de fond natif. Navigation Chaque fois que le tableau de bord est chargé mais chaque fois que je passe au tableau de bord, il se déplace vers l'écran de la boîte de réception qui est le premier élément de ma navigation du bas de réaction. Y a-t-il un moyen de créer un écran par défaut lorsque des onglets inférieurs de l'écran sont utilisés?

Le code que j'utilise pour la navigation inférieure est

 dashboard: {
        screen: createBottomTabNavigator({
            inbox: {
                screen: Chat,
                navigationOptions: ({ navigation }) => ({
                    title: 'Inbox',
                }),
            },
            favourite: {
                screen: Favourite,
                navigationOptions: ({ navigation }) => ({
                    title: 'Favourite',
                }),
            },
            dashboard: {
                screen: Dashboard,
                navigationOptions: ({ navigation }) => ({
                    title: 'Home',
                    initialRouteName: 'dashboard'
                }),
            },
            setting: {
                screen: SettingScreen,
                navigationOptions: ({ navigation }) => ({
                    title: 'Setting',
                }),
            },
            survey: {
                screen: NutritionistSurvey,
                navigationOptions: ({ navigation }) => ({
                    title: 'Survey',
                }),
            },
        }),
        navigationOptions: ({ navigation }) => ({
            title: 'Dashboard',

        }),


    },

Même si la navigation fonctionne complètement bien, j'ai juste besoin d'un moyen de charger l'écran de tableau de bord chaque fois que l'utilisateur navigue sur le tableau de bord.

6
theCoder

Vous avez 2 écrans nommé Dashboard, le BottomTabnavigator et l'écran de tableau de bord. Ainsi, lorsque vous essayez de naviguer à tableau de bord React-navigation naviguera vers le premier onglet de votre Bottabnavigator.

Renommez le BottomTabnavigator, et cela devrait fonctionner:

 dashboardTabs: {
        screen: createBottomTabNavigator({
            inbox: {
                screen: Chat,
                navigationOptions: ({ navigation }) => ({
                    title: 'Inbox',
                }),
            },
            favourite: {
                screen: Favourite,
                navigationOptions: ({ navigation }) => ({
                    title: 'Favourite',
                }),
            },
            dashboard: {
                screen: Dashboard,
                navigationOptions: ({ navigation }) => ({
                    title: 'Home',
                    initialRouteName: 'dashboard'
                }),
            },
            setting: {
                screen: SettingScreen,
                navigationOptions: ({ navigation }) => ({
                    title: 'Setting',
                }),
            },
            survey: {
                screen: NutritionistSurvey,
                navigationOptions: ({ navigation }) => ({
                    title: 'Survey',
                }),
            },
        }),
        navigationOptions: ({ navigation }) => ({
            title: 'Dashboard',
        }),
    },
0
sanjar