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

Я называю эту функцию onNotification, и она выполняется

    function onNotificationOpened(notification) {
        console.log('navigating')
        console.log(NavigationActions)
        NavigationActions.navigate('Journal')
    }

Таким образом, «навигация» печатается на консоли, а также NavigationActions с функцией навигации в ней. Так и есть. Но когда приложение открывается, навигация не происходит, и приложение остается на том же экране. Там нет опечатка или что-нибудь в псевдониме. После открытия приложения я могу нормально перемещаться. Неважно, положил я там навигацию или нет, приложение все равно открывается на главном экране. Я думаю, что это может быть, что навигация действительно происходит, но только немного раньше, чем само приложение открывает главный экран. Я не уверен в этом, конечно, это мое предположение. Я что-то здесь не так делаю?

1
irondsd 12 Апр 2019 в 16:16

2 ответа

Лучший ответ

То, что вы хотите сделать, похоже на глубокую ссылку, заблокируйте на это Есть несколько полезных ответов.

1
amirhosein 12 Апр 2019 в 13:46

Попробуйте это в своей функции onNotificationOpened

 let isBackground = notification.foreground;
    if(isBackground == true){
      this.props.navigation.navigate('Journal');
0
Masuk Helal Anik 12 Апр 2019 в 13:25