我是反应原生和反应导航的新手。如何在导航员之间传递参数?即从中传递一些参数
导航到导航器的另一个屏幕
请参阅下面的导航器设置。
const MobileNumberEntryStack = StackNavigator({
MobileNumberEntry: MobileNumberEntryScreen
});
const AuthStack = StackNavigator({
SignIn: SignInScreen,
SignUp: SignUpScreen
});
const AppNavigator = SwitchNavigator({
Loading: LoadingScreen,
App: TabNavigator,
Auth: AuthStack,
MobileNumberEntryStack: MobileNumberEntryStack,
});
export default AppNavigator;
在我的LoadingScreen
我正在获取一些数据,从那里我通过调用切换到MobileNumberEntryStack
`this.props.navigation.navigate('MobileNumberEntryStack', { user` })
但我没有在MobileNumberEntryScreen
获得用户。有人可以帮我弄这个吗?
你可以访问你使用this.props.navigation.navigate('ScreenName', {user})
发送的变量,就像这个this.props.navigation.state.params.user
一样。
您可以使用此代码从NavigatorA发送params:
this.props.navigation.navigate('Details', {
itemId: 86,
otherParam: 'anything you want here',
});
并使用此代码在NavigatorB中接收params:
const { navigation } = this.props;
const itemId = navigation.getParam('itemId', 'NO-ID');
const otherParam = navigation.getParam('otherParam', 'some default value');
将以下代码添加到AppNavigator中,然后尝试导航到它。
MobileNumberEntryStack: {
screen: MobileNumberEntryStack,
},