Я использую Wix's реагировать на родную навигацию V2.В моем навигационном ящике есть одно имя компонента, после нажатия которого я перехожу к следующему экрану, и после нажатия кнопки назад я возвращаюсь, но ящик открывается.
Ниже приведен код моего главного экрана, который имеетправая кнопка, чтобы открыть ящик навигации.
export default class Boiler extends Component {
constructor(props) {
super(props);
this.isSideDrawerVisible = false;
Navigation.events().bindComponent(this);
}
navigationButtonPressed({ buttonId }) {
if (buttonId === "buttonOne") {
(!this.isSideDrawerVisible) ? this.isSideDrawerVisible = true : this.isSideDrawerVisible = false
Navigation.mergeOptions(this.props.componentId, {
sideMenu: {
left: {
visible: this.isSideDrawerVisible,
}
}
});
this.isSideDrawerVisible = false
}
}
render() {
return (
<View style={styles.container}>
<Text>Hello</Text>
</View>
);
}
}
Ниже приведен код setRoot моего главного экрана
Navigation.setRoot({
root: {
sideMenu: {
left: {
component: {
name: 'SideDrawer',
passProps: {
text: 'This is a left side menu screen'
}
}
},
center: {
stack: {
id: 'mainStack',
children: [
{
stack: {
id: 'tab1Stack',
children: [
{
component: {
name: 'Home'
}
}
],
options: {
topBar: {
leftButtons: [
{
id: 'buttonOne',
icon: sources[0]
}
],
}
}
}
},
],
}
}
}
}
});
Я не получаю после возвращения на главный домашний экран, почемуоткрывается навигационный ящик.
, а следующий код - после нажатия текста на навигационном ящике
goNew = () => {
this.goClose()
Navigation.push('mainStack', {
component: {
name: 'NewComp',
passProps: {
text: 'Pushed screen'
},
options: {
topBar: {
title: {
text: 'New Component'
}
},
sideMenu: {
left: {
enabled: false
}
}
}
}
});
}
Пожалуйста, помогите, если кто-нибудь может.заранее спасибо.