首页 > 解决方案 > 导航('DrawerOpen')不起作用

问题描述

我正在按照本教程制作一个应用程序:

我只是做了完全一样的。它编译但抽屉菜单的按钮不起作用。这是按钮所在的代码:

    import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
import {createBottomTabNavigator} from 'react-navigation';
import ScreenOne from './TabNavigator/ScreenOne';
import ScreenTwo from './TabNavigator/ScreenTwo';
import { Container, Header,Left,Right,Icon } from 'native-base';

export default class AppTabNavigator extends React.Component{

    static navigationOptions = ({navigation}) =>{
        return{
            headerLeft:(
                <View style={{padding:10}}>
                    <Icon name ="menu" style={{fontSize: 24, color : 'black'}} onPress={()=>navigation.navigate('DrawerOpen')} />
                </View>
            )
        }
    }
    render(){
        return(
            <HomeScreenTabNavigator screenProps={{navigation: this.props.navigation}}/>
        )
    }
}

const HomeScreenTabNavigator = new createBottomTabNavigator({
    ScreenOne:{
        screen: ScreenOne,
        navigationOptions:{
            tabBarLabel: 'Feed'
        }
    },
    ScreenTwo:{
        screen: ScreenTwo,
        navigationOptions:{
            tabBarLabel: 'Feed'     }
    }
})

标签: reactjsreact-nativereact-navigation

解决方案


自 react-navigation 2.X 版以来,您不能使用以下代码:

navigation.navigate('DrawerOpen')

但相反,您需要使用:

navigation.openDrawer()

另请参阅抽屉文档


推荐阅读