react-native - 在 TabNavigator 中重置当前 Stack 并导航到其他 Stack (react-navigation)
问题描述
我的两个堆栈导航器定义如下。
const Stack1 = createStackNavigator({
Step1, // screen
Step2, // screen
Step3 // screen
});
const Stack2 = createStackNavigator({
First, // screen
Second // screen
});
和选项卡导航器:
const AppStack = createBottomTabNavigator({
Stack1,
Stack2,
Stack3,
Stack4
});
当用户在 Step3 屏幕(来自 Stack1)并按下我想要的按钮时:
1. 重置 Stack1 和 Stack2,而不重置 Stack3 和 Stack4
2. 然后导航到 Stack2 中的某个屏幕(例如“第一个”屏幕) .
任何人都知道如何以最简单和最有效的方式实现这一目标?
我当前的解决方法,它只重置 Stack2 并导航到第一个屏幕:
navigation.dispatch(
StackActions.push({
routeName: 'Stack2',
action: StackActions.reset({
index: 0,
key: null,
actions: [
StackActions.push({ routeName: 'First' }),
],
}),
})
);
版本:“反应导航”:“~2.3.1”
解决方案
推荐阅读
- android - Firebase - 在 Graph 8.0 更新后从具有 Facebook 提供商的身份验证获取个人资料照片网址
- ios - 将缓冲区附加到 AVAssetWriterInputPixelBufferAdaptor *not* 按时间顺序?
- reactjs - react js中Formik面临的验证和isValid问题
- kotlin - 从视图中监听协程不能从视图初始化中完成
- python - 如何加快 conda 的包安装过程?
- javascript - How to replace a d3js nest function with group and rollup
- c# - API reuring image 无法正确显示图像
- pagespeed-insights - 是否可以将 cookie 设置为 Page Speed Insights 测试?
- javascript - 如何在 3rd 方 iframe 中的 3rd 方表单上预填充表单字段?(固化)
- php - 如何通过在 laravel 中传递参数来获取内容类型 application/x-www-form-urlencoded 的响应