react-native - 更改选项卡后如何弹出堆栈顶部?
问题描述
我有一个带有 4 个标签的标签栏。他们每个人都有一个堆栈导航器。切换标签后,我想弹出到顶部吗?我知道它与 defaultNavigationOptions 有关。请给我一些建议。
解决方案
const HomeStack = createStackNavigator();
function HomeStackScreen() {
return (
<HomeStack.Navigator>
<HomeStack.Screen name="Home" component={HomeScreen} />
<HomeStack.Screen name="Details" component={DetailsScreen} />
</HomeStack.Navigator>
);
}
const SettingsStack = createStackNavigator();
function SettingsStackScreen() {
return (
<SettingsStack.Navigator>
<SettingsStack.Screen name="Settings" component={SettingsScreen} />
<SettingsStack.Screen name="Details" component={DetailsScreen} />
</SettingsStack.Navigator>
);
}
const Tab = createBottomTabNavigator();
export default function App() {
return (
<NavigationContainer>
<Tab.Navigator>
<Tab.Screen name="Home" component={HomeStackScreen} />
<Tab.Screen
name="Settings"
component={SettingsStackScreen}
listeners={({ navigation, route }) => ({
tabPress: e => {
// navigation.popToTop();
navigation.navigate(route.name);
},
})}
/>
</Tab.Navigator>
</NavigationContainer>
);
}
推荐阅读
- javascript - 追加新元素后,jQuery UI 可排序刷新不起作用
- javascript - 最大调用不超过 NodeJS 中某些函数内部的代码
- matlab - 使用 simout 收集数据以进行数千次运行的实验
- asp.net-mvc - 如何查看模态框内的编辑视图
- ruby-on-rails - 尽管在 gemfile/rails 帮助器中定义了 rspec/rails,但 Rspec 产生了一个未定义的方法 `route_to'
- c++ - 从 C++ 中的后缀表达式字符串打印单个操作
- python - 使用键作为元组的字典的有效循环
- python-3.x - 如何解决 pygame 中不透明度更改的 OOP 问题
- powershell - Powershell Get-Content 虚假失败
- matlab - Matlab使用矢量化的多个线性最小二乘