当我从主屏幕(堆栈导航器)导航到页面之一时,它将传递变量。但是,当我从BottomTop导航器单击其他页面时,它不会传递变量。
[在从BottomTap导航器中选择变量时,将变量从页面传递到另一个
从主屏幕(堆栈)
<TouchableOpacity
onPress={()=> this.props.navigation.navigate("Screen1", {loggedInUser: loggedInUser, Role: Role})}>
</TouchableOpacity>
**我正在从登录页面获取loginInUser和角色
在Screen1(bottomTab)中
const { navigation } = this.props;
const loggedInUser = navigation.getParam('loggedInUser');
const Role = navigation.getParam('Role');
它在从首页到屏幕1的第一次导航中获得这些变量(loggedInUser和Role),但是当我从屏幕1导航到屏幕2(通过BottomTab导航器)时,它没有传递变量。
我阅读了有关AsyncStorage,密钥和dragonallyGetParent的内容,并且不诚实地知道如何在我的代码中利用它们。
|软件|版本
|反应导航| 4.0.10
|反应本机| 0.60.5
|节点| v10.16.0
| npm或纱| 6.12.0
根据React Navigation将参数传递到路由仅适用于堆栈导航器。因此,您不能对标签导航器应用相同的方案。
最好使用Redux保存数据。