1

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

我将此函数称为onNotification,它正在执行

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

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

4

2 回答 2

1

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

于 2019-04-12T13:46:23.430 回答
0

onNotificationOpened在你的函数上试试这个

 let isBackground = notification.foreground;
    if(isBackground == true){
      this.props.navigation.navigate('Journal');
于 2019-04-12T13:25:40.557 回答