Javascript 传递导航时无法获取参数
我有两个导航器,一个是Javascript 传递导航时无法获取参数,javascript,reactjs,react-native,react-navigation,Javascript,Reactjs,React Native,React Navigation,我有两个导航器,一个是Auth它是StackNavigator包含signnscreen,一个是App它是BottomTabNavigator包含主屏幕,我想从主屏幕导航到signnscreen,并传递一些参数以指示源代码 我尝试了很多类似下面的代码 navigation.navigate('Auth', { source: 'App' }) 或 或 但它们都不起作用navigation.getParam('source',null)始终返回null 查看更多关于 我也读过和 预期行为
Auth
它是StackNavigator
包含signnscreen
,一个是App
它是BottomTabNavigator
包含主屏幕
,我想从主屏幕
导航到signnscreen
,并传递一些参数以指示源代码
我尝试了很多类似下面的代码
navigation.navigate('Auth', { source: 'App' })
或
或
但它们都不起作用navigation.getParam('source',null)
始终返回null
查看更多关于
我也读过和
预期行为
- 我希望代码
返回实际参数navigation.getParam('source',null)
我还发布了它。最后,我需要将代码还原为
导航。在主屏幕中导航('Auth',{source:'App'})
,然后我可以获得如下代码所示的参数
const parent = navigation.dangerouslyGetParent();
let source = null;
if (parent && parent.state && parent.state.params) {
({ source } = parent.state.params);
}
尝试改用navigation.state.params.source。
navigation.navigate(
'Auth',
{},
{
type: 'Navigate',
routeName: 'Auth',
action: {
type: 'Navigate',
routeName: 'SignInScreen',
params: { source: 'App' }
}
}
)
const parent = navigation.dangerouslyGetParent();
let source = null;
if (parent && parent.state && parent.state.params) {
({ source } = parent.state.params);
}