react-native - 不同堆栈导航器中的相同屏幕
问题描述
假设我有 3 个堆栈导航器(以底部选项卡为基础)。并且那些 3 堆栈导航器共享同一个可导航的屏幕。
是否可以在所有 3 个堆栈导航器中共享相同的标签和屏幕,如下所示?或者我应该创建 3 个单独的标签和屏幕 Profile1、Profile2、Profile3?一般的做法是什么?
另外,如果我在不同的堆栈中共享同一个屏幕,是否有任何“陷阱”或奇怪的行为?
注意:我正在使用反应导航4.0.10
const Stack1 = createStackNavigator(
{
Stack1: Home1,
Profile: Profile
}
);
const Stack2 = createStackNavigator(
{
Stack2: Home2,
Profile: Profile
}
);
const Stack3 = createStackNavigator(
{
Stack3: Home3,
Profile: Profile
}
);
const AppNavigator = createBottomTabNavigator({
Bottom1: Stack1,
Bottom2: Stack2,
Bottom3: Stack3
}
解决方案
你可以做
const Stack1 = createStackNavigator(
{
Stack1: Home1,
Profile1: Profile
}
);
const Stack2 = createStackNavigator(
{
Stack2: Home2,
Profile2: Profile
}
);
const Stack3 = createStackNavigator(
{
Stack3: Home3,
Profile3: Profile
}
);
const AppNavigator = createBottomTabNavigator({
Bottom1: Stack1,
Bottom2: Stack2,
Bottom3: Stack3
}
推荐阅读
- emacs - 如何在使用 Org-Babel 进行评估时将一个代码块作为序言添加到另一个代码块,以实现代码块的 noweb 样式扩展?
- clojure - 使用 Clojure Spec 检查缺点的类型一致性?
- angular - Angular 6 - 动态填充表格内容值
- java - 正则表达式中的匹配组
- c++ - 为什么我不能在这样的字符串上替换字符?
- node.js - Firebase 检查数据库是否存在
- c++ - 使用 CXXFLAGS 在我的 makefile 中启用 C++ 11 支持
- java - 请求位置更新返回相同的坐标
- java - 如何做文件夹和文件的递归树?
- python - Flask Admin Ckeditor 图片上传