Я не могу передать параметры, используя реагирующую навигацию в реагирующем языке при переходе от экрана навигатора вкладок к экрану навигатора стека - PullRequest
0 голосов
/ 26 марта 2019

Я думаю, что это довольно просто, когда речь заходит о переходе между экранами навигаторов вкладок, но, похоже, существует проблема при попытке передать параметры с экрана навигатора вкладок на экран стекового навигатора в реакции-нативной с использованием реакции-навигации .

Я пробовал это:

onPress={() => {
    this.props.navigation.navigate('review', {
    aa1: 86,
    bb1: 'anything you want here',
    });
}}

А это:

onPress={() => this.props.navigation.dispatch(NavigationActions.navigate({ routeName: 'review', params: { aa1: 'x' }, }))}

как обработчик onPress моей TouchableOpacity. Никто из них не работает. Я могу ориентироваться, но не могу получить параметры.

Ниже показано, как я пытаюсь получить параметры на экране навигатора целевого стека:

const { navigation } = this.props;
//if a is not passed, No a is the default value.
const a = this.props.navigation.getParam('aa1', 'NO a');
const b = navigation.getParam('bb1', 'No b');

Есть идеи?

1 Ответ

1 голос
/ 26 марта 2019

Я смог понять и решить проблему.Проблема заключалась в том, что имя экрана, к которому я пытался перейти, и имя стекового навигатора (имя стекового навигатора в навигаторе с вложенной / родительской вкладкой), который содержал этот экран, были одинаковыми.И хотя навигация работала, параметры не передавались, как я сказал в описании проблемы.Навигация работала, потому что экран, по которому я пытался перемещаться, был задан в качестве начального маршрута в навигаторе со стеком.По-видимому, я осуществлял навигацию и передавал параметры в содержащий навигатор стека.Как только я изменил название стекового навигатора, проблема была решена.

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