我有一个标签导航器,我想知道是否可以将参数传递给标签导航器并在HomePage组件中使用该参数。
我正在使用从Drawer Navigator传递参数this.props.navigation.navigate('TabsNav', {testParam: 'TEST'})
。
是否可以将参数传递给这样的导航器?
TabNav.js
export const Tabs = createMaterialTopTabNavigator(
{
HomePage: {
screen: Home,
navigationOptions: {
tabBarLabel:"Home Page",
},
},
ListView: {
screen: List,
navigationOptions: {
tabBarLabel:"List View",
}
},
},
{
order: ['HomePage', 'ListView'],
},
)
DrawerContainer.js
render() {
return (
<View style={styles.container}>
<View>
<TouchableHighlight
style={styles.TouchableHighlight}
onPress={this.props.navigation.navigate('TabsNav', {testParam: 'TEST'})}
<Text>Home</Text>
</TouchableHighlight>
</View>
<View>
<TouchableHighlight
style={styles.TouchableHighlight}
onPress={this.props.navigation.navigate('ProfilePage')}>
<Text>List View</Text>
</TouchableHighlight>
</View>
</View>
)
}
您需要导航到选项卡内部的特定屏幕,而不是选项卡本身,否则参数将进入选项卡导航器。参数只会转到您直接导航到的路线。
所以
Drawer({
TabsNav: Tab({
HomePage: ScreenA,
ListView: ScreenB,
})
});
导航到HomePage或ListView而不是TabsNav
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句