Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React navigation 反应本机导航侧栏和选项卡栏切换导航_React Navigation_React Native Navigation_React Navigation V5 - Fatal编程技术网

React navigation 反应本机导航侧栏和选项卡栏切换导航

React navigation 反应本机导航侧栏和选项卡栏切换导航,react-navigation,react-native-navigation,react-navigation-v5,React Navigation,React Native Navigation,React Navigation V5,我想在侧栏和选项卡导航之间切换。我有它,所以它当前根据屏幕大小在选项卡和边栏之间切换,但是因为它们是单独的导航器,所以它会重置导航堆栈。当我更改导航器时,是否有任何方法可以持久化导航堆栈 如果有办法让抽屉和TabBar navigator同时具有相同的屏幕,也可以解决我的问题 {deviceSize(layout.width)>0|| (layout.width=960px,则显示抽屉导航器,否则显示底部选项卡。在iPad上,纵向模式将是标签,横向模式将是抽屉。@EstebanChornet问

我想在侧栏和选项卡导航之间切换。我有它,所以它当前根据屏幕大小在选项卡和边栏之间切换,但是因为它们是单独的导航器,所以它会重置导航堆栈。当我更改导航器时,是否有任何方法可以持久化导航堆栈

如果有办法让抽屉和TabBar navigator同时具有相同的屏幕,也可以解决我的问题


{deviceSize(layout.width)>0||
(layout.width<50&&Platform.OS=='web')(
) : (
)}

我最后做的只是在移动应用程序中使用底部导航,在web和移动web中使用抽屉导航。因此,我的代码如下所示:

{Platform.OS=='web'(
) : (
)}
之所以这样做有效,而不是相反,是因为它只使用平台,所以导航器从来没有理由在进程中间切换。所以我决定放弃标签,在大屏幕上使用带有侧抽屉和永久侧抽屉的移动网络汉堡包菜单

因此,在我的抽屉导航器
中,我将
抽屉类型设置为

drawerType={deviceSize(layout.screenWidth)==0?'front':'permanent'}

您找到了适合您需要的东西吗?我在找类似的东西。根据我们是否处于桌面模式,显示抽屉导航器,如果处于移动模式,则显示底部选项卡导航器。@EstebanChornet查看我刚刚发布的答案,如果需要更多信息,请告诉我。谢谢您的回答!仅供参考,我最终决定使用react native的
useWindowDimensions()
,如果
width>=960px
,则显示抽屉导航器,否则显示底部选项卡。在iPad上,纵向模式将是标签,横向模式将是抽屉。@EstebanChornet问题是,如果有人调整浏览器的大小,导航将被重置,他们将失去位置