почему у нас есть несколько стекаНавигаторов? - PullRequest
0 голосов
/ 01 декабря 2018

например, эта кодовая форма react-navigation документация для аутентификации:

import { createSwitchNavigator, createStackNavigator, createAppContainer } from 'react-navigation';

// Implementation of HomeScreen, OtherScreen, SignInScreen, AuthLoadingScreen
// goes here.

const AppStack = createStackNavigator({ Home: HomeScreen, Other: OtherScreen });
const AuthStack = createStackNavigator({ SignIn: SignInScreen });

export default createAppContainer(createSwitchNavigator(
  {
    AuthLoading: AuthLoadingScreen,
    App: AppStack,
    Auth: AuthStack,
  },
  {
    initialRouteName: 'AuthLoading',
  }
));

Почему у нас два разных стековых навигатора?Почему мы просто не сворачиваем все наши экраны в один навигатор?Какова должна быть логика для упаковки разных экранов в одни и те же навигаторы?

1 Ответ

0 голосов
/ 01 декабря 2018

Если вы рассматриваете только навигацию, то нет реальной причины иметь один стековый навигатор в другом.

Однако существуют визуальные причины, которые могут потребовать использования разных навигаторов - разные переходы, макет заголовкаи другие параметры стиля, все из которых можно найти здесь .

При этом не обязательно использовать несколько навигаторов, так как большинство этих параметров можно установить на экране.на экране, но это может быть полезно при попытке минимизировать количество шаблонного кода.

...