如何判断我在哪个反应StackNavigator页面上

时间:2018-08-26 15:00:30

标签: react-native stack-navigator

我正在使用本机StackNavigator和Redux,在我的AppMain中,我设置了DeviceEventEmitter.addListener以便在发生某些情况时向我发出警报。 (对于ios,为NativeEventEmitter)。

例如,来自kontaktio的BeaconDidAppear。

但是我想知道我在哪个页面上,然后在启动页面上,或者在帮助页面或设置页面之一上时,我不希望显示警报。如何检查我所在的页面,以便正确显示警报?有没有办法从AppMain做到这一点?

如果没有办法查看当前页面,我还有两个选择。哪个最好?

  1. 当我导航到新页面时,还要在Redux中设置状态:currentPage。但是然后,我还必须知道何时从该页面返回。

  2. 完全删除警报,并在事件发生时设置状态。在我想要警报的页面上,显示警报是否出现的视图。

    • 这样做的缺点是我必须将“视图”覆盖在那里的其他内容(我不确定我该怎么做),然后针对要提醒的每个页面再次重复该操作。

0 个答案:

没有答案