如何重置已重置的嵌套StackNavigator

时间:2019-02-20 01:33:50

标签: react-native react-navigation react-navigation-stack

我有一个TabNavigator,一个标签是嵌套的StackNavigator。当用户导航到StackNavigator的最终屏幕时,由于最终屏幕是确认屏幕,因此将重置堆栈,并且用户不应能够向后滑动并重新提交其操作。这可以通过直接重置来实现:

const resetAction = StackActions.reset({
  index: 0,
  actions: [NavigationActions.navigate({ routeName: 'transactionCompleted' })],
});
this.props.navigation.dispatch(resetAction);

然后,他们可以转到另一个选项卡(用户在此处单击一个按钮,该按钮仅调用props.navigation.dismiss()以关闭堆栈并返回默认选项卡),因此返回该选项卡,此时堆栈仍在堆栈的最后一个屏幕上。

我无法弄清楚如何将该堆栈的状态重置回其初始状态,以便用户可以重新浏览整个堆栈。

我觉得这可能很简单,我已经错过了一些显而易见的东西,但是似乎无法从tabnavigator组件中找到stacknavigator以便对其状态进行任何操作。

0 个答案:

没有答案