Как отключить заданный c переход экрана в реакции-навигации ^ 3.13.0 - PullRequest
1 голос
/ 17 марта 2020

Я пытался отключить переход экрана для указанного экрана c,

, но я не могу его отключить

const MainNavigator = createStackNavigator(
    {
        ... Other routes

        CreditCardsList: {
            screen: CreditCardsList,
            navigationOptions: ({ navigation,screenProps }) =>({
                title: 'Credit Cards List',
                animationEnabled: false,
            }),
            transitionConfig: () => ({
                transitionSpec: {
                    duration: 0
                },
            }),
        },
    }
);

const App1 =  createAppContainer(MainNavigator);
export default App1;

Версия:

    "react": "16.8.6",
    "react-native": "0.60.5",
    "react-navigation": "^4.3.1",
    "react-navigation-drawer": "^1.4.0",
    "react-navigation-stack": "^1.10.3",
    "react-navigation-tabs": "^1.2.0",

Я перепробовал почти все, пожалуйста, помогите. Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 18 марта 2020

Я достиг следующих результатов, пожалуйста, напишите, если у вас есть лучший вариант

    defaultNavigationOptions: ({ navigation }) => {
        ...
    },
    transitionConfig: (navigation) => {
            if(navigation.navigation.state.routes.length > 2){
                if(navigation.navigation.state.routes[2].routeName === 'CreditCardsList'){
                    return{
                        transitionSpec: {
                            duration: 0,
                        },
                    }
                }
            }
0 голосов
/ 18 марта 2020

Здесь вы go:

        navigationOptions: {
                ...
        }
        defaultNavigationOptions: ({ navigation }) => {
            let animationEnabled = true;

            if (navigation.state.routeName == 'CreditCardsList') {
                animationEnabled = false;
            } else if (navigation.state.routeName == 'OtherBlockedPage') {
                animationEnabled = false;
            }

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