bottom-tab-navigator скрывается, когда я перехожу на другой экран с помощью выдвижного ящика

Я использую нижнюю вкладку и навигатор ящика в моем проекте, поддерживающем реакцию, используя expo. Я использую в своем проекте react-navigation v5. Я не уверен, почему, но когда я перехожу на другой экран с помощью выдвижного ящика, я теряю нижнюю панель вкладок на этой странице. Может ли кто-нибудь помочь мне сохранить постоянство на каждой странице?

https://snack.expo.io/rkC_VVFE8


person Saurabh Singh    schedule 01.03.2020    source источник
comment
У вас есть вложенные вкладки внутри ящика. Попробуйте вложить ящик в вкладки.   -  person Ashwin Mothilal    schedule 01.03.2020
comment
Если я вложу ящик внутрь вкладки, то при переключении на вторую вкладку я не смогу использовать ящик.   -  person Saurabh Singh    schedule 01.03.2020
comment
Я думаю, вам нужно обернуть HOC вкладками для каждого элемента ящика.   -  person Ashwin Mothilal    schedule 01.03.2020


Ответы (1)


Вы вложили Drawer (MyDrawer) в Tab.Screen и вложили Tab.Navigator в NavigationContainer.

пример кода: Gist

решение вашего кода:

export default function App() {
  return (
    <NavigationContainer>
        <Tab.Navigator>
          <Tab.Screen name="Home" component={MyDrawer} />
          <Tab.Screen name="Settings" component={SettingsScreen} />
        </Tab.Navigator>
    </NavigationContainer>
  );
}
person Kadir Yaka    schedule 03.03.2020
comment
с приведенным выше кодом я, вероятно, потеряю ящик, если перейду на экран настроек - person Saurabh Singh; 04.03.2020
comment
да. Ты прав. К сожалению, компонент NavigationContainer содержит единственный контейнер. когда я добавил мульти-навигатор, появляется сообщение об ошибке: Другой навигатор уже зарегистрирован для этого контейнера. Скорее всего, у вас есть несколько навигаторов под одним NavigationContainer или Screen. Убедитесь, что каждый навигатор находится в отдельном контейнере экрана. - person Kadir Yaka; 05.03.2020