Отключить слайд-меню [ящик] на определенных страницах в реагировать родной - PullRequest
0 голосов
/ 09 июля 2019

Я еще новичок.

Я занимаюсь разработкой приложения, в котором есть слайд-меню [ящик].

Я хочу отключить этот ящик на нескольких страницах.

В своем приложении я создал два StackNavigator [первый - HomeNavigator1, второй - HomeNavigator]

const HomeNavigator1 = createStackNavigator({

  Start: {
      screen: StartScreen
    },

    Login: {
      screen: LoginScreen
    },
    Register: {
      screen: RegisterScreen
    },
    ForgetPass: {
      screen: ForgetPassScreen
    },

});

const HomeNavigator = createStackNavigator(

{ 
  HomeScreen: {
    screen: HomeScreen,
    navigationOptions: ({navigation}) => ({
    headerLeft: leftIcon(navigation, 'md-menu')
  })
  },
  WorkoutsScreen: {
    screen: WorkoutsScreen
  },
}, navigationOptions

);

В конце концов, я создал DrawerNavigator [объедините здесь 2 стековых навигатора]

const RootStack = createDrawerNavigator({

  Start:
  {
    screen:HomeNavigator1,
  },
  Home: 
  {
    screen: HomeNavigator,
  }
}, 
//created one other file named SideMenu which contains items of drawer menu
{
  contentComponent: SideMenu,
  drawerWidth: width * .7,
  drawerOpenRoute: 'DrawerOpen',
  drawerCloseRoute: 'DrawerClose',
  drawerToggleRoute: 'DrawerToggle',
}

);

Примечание: весь этот код в одном файле

Моя проблема или вопрос

Как отключить слайд-меню [ящик] для HomeNavigator1 [для 4 экранов Пуск, вход в систему, регистрация и забыть]]

Пожалуйста, помогите мне решить эту проблему.

Спасибо за ваше драгоценное время

1 Ответ

1 голос
/ 09 июля 2019

Вы можете отключить жест на своем маршруте.

Start:
  {
    screen:HomeNavigator1,
    navigationOptions: {
        gesturesEnabled: false,
    }
  },

Или на своих экранах:

Login: {
      screen: LoginScreen,
      navigationOptions: {
            gesturesEnabled: false,
      }
    }

Но это не лучший способ исправить это.

...