У меня есть кнопка в заголовке, чтобы открывать и закрывать меню ящика навигации.Когда я вызываю приведенный ниже метод из componentDidMount (), он работает и открывает меню:
this.props.navigation.toggleDrawer();
Но когда я нажимаю кнопку, он не работает и просто исчезает с экрана!Вот код компонента:
export class Home extends BaseScreen {
constructor(props) {
super(props);
}
static navigationOptions = ({ navigation }) => {
const { params = {} } = navigation.state;
return ({
headerStyle: {
backgroundColor: '#FF9800'
}
, headerRight: <UserCoins />
, headerLeft: <Button onPress={params.handlePress} title='Menu' />
, title: 'title'
})
}
_handlePress() {
this.props.navigation.toggleDrawer();
}
state = {
coins: 0,
}
//
componentDidMount() {
this.props.navigation.setParams({
handlePress: this._handlePress.bind(this)
});
//here working
this.props.navigation.toggleDrawer();
}
render() {
return (<Text />);
}
}
export default Home
Моя структура навигатора:
1.SwitchNavigator
2.BottomTabNavigator
3.DrawerNavigator
4.StackNavigator (Домашний компонент внутри него)