Навигация ("DrawerOpen") не работает

Hack Facilito спросил: 31 июля 2018 в 09:30 в: reactjs

Я делаю приложение после этого учебника:

Я просто делал это так же. Он компилируется, но кнопка меню ящика не работает. Это код, в котором находится кнопка:

    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'     }
    }
})

1 ответ

Есть решение
Perry ответил: 31 июля 2018 в 10:33

Начиная с версии 2.X реагирующей навигации, вы не можете использовать следующий код:

navigation.navigate('DrawerOpen')

Но вместо этого вам нужно использовать:

navigation.openDrawer()

См. также документацию по ящикам

Hack Facilito ответил: 31 июля 2018 в 11:30
Отлично. Как я могу изменить это, чтобы работать также в 2.X: < HomeScreenTabNavigator screenProps = {{navigation: this.props.navigation}} / > @Perry
Perry ответил: 31 июля 2018 в 11:39
@HackFacilito Что не работает на вашем домашнем экране TabNavigator?