我处于这种困难的情况下,需要一些帮助。
我正在开发此显示本地事件或活动的应用。
GPS距离过滤器屏幕:
MainTabNavigator,其屏幕包括TopTabNavigator:
我具有以下导航结构:
MainTabNavigator->
选项卡1:“事件”
选项卡2:“活动”
MainTabNavigator在options属性中提供了一个标题:
<Stack.Screen
options={{
headerTitle: '',
headerLeft: () => MainTabNavigatorLeftHeader(navigation),
headerRight: () => MainTabNavigatorHeaderRight(navigation),
headerStyle: MainHeaderStyle
}}
name="Events"
component={EventsScreen}
/>
标题中有一个按钮,单击该按钮将打开GPS距离过滤器屏幕,可以在其中选择半径以查看特定KM半径内的内容。
然后,当他按标题中包含的“ Gps距离筛选器”屏幕上的后退按钮时,您将返回到带有顶部标签和内部列表的maintabnavigator。因此,当KM半径已更改(我通过AsyncStorage保存选定的半径)时,我需要刷新所有“顶部”选项卡屏幕上的所有平面列表。
我尝试通过焦点添加侦听器或钩子来执行此操作,但是然后在顶部标签更改或顶部标签滑动时也会刷新所有列表,有什么方法可以有效地做到这一点吗?
Toptab屏幕全部由一个组件生成,因此我只需要触发该组件中的一个功能即可刷新所有屏幕。