在用户打开通知时导航

Navigate when user opens notification

我正在尝试在用户单击通知时导航到特定屏幕。我正在使用 react-native-push-notification 并且效果很好。问题是,由于某种原因导航没有发生。

我调用这个函数onNotification,它正在执行

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

因此 'navigating' 打印在控制台上,以及带有导航功能的 NavigationActions。所以它就在那里。但是当应用程序打开时,导航不会发生并且应用程序停留在同一屏幕上。屏幕名称中没有错别字或任何内容。应用程序打开后,我可以正常导航。我是否将导航放在那里并不重要,该应用程序仍会在主屏幕上打开。 我在想这可能是导航确实发生了,但只是在应用程序本身打开主屏幕之前一点。我不确定,当然,这是我的猜测。 我做错了什么吗?

在你的 onNotificationOpened 函数上试试这个

 let isBackground = notification.foreground;
    if(isBackground == true){
      this.props.navigation.navigate('Journal');

你想做的类似于深度链接,锁定在this , 有一些有用的答案。