我有一个标签导航器,我想知道是否可以将参数传递给标签导航器并在HomePage组件中使用该参数。
我正在使用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>
)
}
答案 0 :(得分:1)
您需要导航到选项卡内部的特定屏幕,而不是选项卡本身,否则参数将进入选项卡导航器。参数只会转到您直接导航到的路线。
如此
Drawer({
TabsNav: Tab({
HomePage: ScreenA,
ListView: ScreenB,
})
});
导航到HomePage或ListView而不是TabsNav