![](/img/trans.png)
[英]DrawerItems not showing from StackNavigator (react-navigation)
[英]Can not pass prop from Stacknavigator to DrawerNavigator in react-navigation
目前,我對屏幕有這種污點:
const Tabs = TabNavigator({
Home: {
screen: Home,
navigationOptions: {
tabBarLabel: 'Home',
tabBarIcon: <Image style={{height: 22, width: 22}} source={require('../assets/images/nav-home.png')}/>,
header: null
}
},
Thanks: {
screen: Thanks,
navigationOptions: {
tabBarLabel: 'Thanks',
tabBarIcon: <Image style={{height: 22, width: 21}} source={require('../assets/images/nav-thanks.png')}/>,
header: null
}
},
Profile: {
screen: Profile,
navigationOptions: {
gesturesEnabled: false
}
},
},
{
initialRouteName: 'Home',
tabBarPosition: 'bottom',
},
)
const Drawer = DrawerNavigator(
{
Tabs: {
screen: Tabs,
navigationOptions: {
drawerLabel: () => null
}
},
Search: {screen: SearchAndProfile}
},
{
drawerPosition: 'right',
initialRouteName: 'Tabs',
drawerOpenRoute: 'DrawerOpen',
drawerCloseRoute: 'DrawerClose',
drawerToggleRoute: 'DrawerToggle'
})
const NotLoggedIn = StackNavigator(
{
LoginScreen: {
screen: Login,
navigationOptions: {
gesturesEnabled: false,
}
},
Drawer: {screen: Drawer}
},
{
initialRouteName: 'LoginScreen',
headerMode: 'none',
navigationOptions: {
gesturesEnabled: false,
}
}
)
const LoggedIn = StackNavigator(
{
Drawer: {screen: Drawer}
},
{
headerMode: 'none',
navigationOptions: {
gesturesEnabled: false,
},
transitionConfig : () => ({
transitionSpec: {
duration: 0,
timing: Animated.timing,
easing: Easing.step0,
},
}),
}
)
export const Root = StackNavigator(
{
Splash:{screen: Splash},
LoggedIn: {
screen: LoggedIn,
navigationOptions: {
gesturesEnabled: false
}
},
NotLoggedIn: {screen: NotLoggedIn}
},
{
headerMode: 'none',
navigationOptions: {
gesturesEnabled: false,
},
transitionConfig : () => ({
transitionSpec: {
duration: 0,
timing: Animated.timing,
easing: Easing.step0,
},
}),
}
)
並且我試圖將參數從啟動屏幕傳遞到登錄屏幕,但似乎在TabNavigator中未定義參數(在主屏幕中)
我像這樣通過
this.props.navigation.navigate('LoggedIn',{testData: 'testing'})
在我登錄this.props.navigation.state.params時在componentDidMount()函數中獲得未定義。 可能是什么原因?
您是否嘗試過這個,(來自github上的討論 )
this.props.navigation.navigate('LoggedIn', {}, {
type: "Navigate",
routeName: "Drawer",
params: {testData: 'testing'},
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.