React native React Native-在按下父选项卡Navigator时将子stackNavigator重置为初始屏幕

React native React Native-在按下父选项卡Navigator时将子stackNavigator重置为初始屏幕,react-native,react-navigation,React Native,React Navigation,我有一个简单的导航结构,设置了4个主屏幕,用户可以使用react navigation/TabNavigator在这些屏幕之间进行导航。在每个主屏幕中,用户可以使用react navigation/StackNavigator导航到辅助屏幕。对于所有4个主屏幕,次屏幕都是相同的组件,因为内容是根据使用redux更改内容状态选择的内容动态加载的 您可以在下图中看到结构 我遇到的问题是,一旦从tab1调用了次屏幕(例如),次屏幕就会滚动到与tab1相关的内容。如果用户随后导航到tab2并调用第二屏幕

我有一个简单的导航结构,设置了4个主屏幕,用户可以使用react navigation/TabNavigator在这些屏幕之间进行导航。在每个主屏幕中,用户可以使用react navigation/StackNavigator导航到辅助屏幕。对于所有4个主屏幕,次屏幕都是相同的组件,因为内容是根据使用redux更改内容状态选择的内容动态加载的

您可以在下图中看到结构

我遇到的问题是,一旦从tab1调用了次屏幕(例如),次屏幕就会滚动到与tab1相关的内容。如果用户随后导航到tab2并调用第二屏幕,则该屏幕将再次显示与tab2相关的内容。这一切都很好,但是如果用户随后导航回tab1,则第二个屏幕仍然存在,这一次与tab2相关的内容仍然存在,因为他们已经更改了上一个选项卡中的状态

长话短说,如果用户随时与TabNavigator交互,我将尝试重置每个主屏幕的各个堆栈。我正在努力了解如何通过触发父选项卡组件中的事件从子堆栈组件启动函数

希望这对人们来说是有意义的


发布代码,并显示您尝试过的操作以及迄今为止没有成功的操作。对于延迟,非常抱歉。可以在这里找到一个有效的演示——我仔细查看了您的代码,它完全按照设计工作,但既然您提出了要求,显然这不是您想要做的。只是为了确保,您的目标是在单击该选项卡的按钮时重置该选项卡的堆栈吗?(例如,单击
选项卡1
并重置选项卡1的堆栈)或者您是否希望所有选项卡中的所有堆栈都重置?这很奇怪,但我只是想确定一下。此外,您是否感到困惑,当您返回时,为什么您的辅助屏幕会显示不同的“主要的辅助内容”?我也可以解释,但如果你明白为什么,我会跳过它。@MichaelCheng-即使OP不需要答案,我也在尝试类似的事情:我有一个TabNavigator,每个TabNavigator中有5个StackNavigator,当用户按下相应的tab时,我需要重置堆栈。(与您的示例完全相同:“单击
选项卡1
并重置选项卡1的堆栈”)。