Как переключить вкладку навигации после аутентификации - PullRequest
0 голосов
/ 03 августа 2020

Я изучаю React Native и пытаюсь создать небольшое приложение. Я использую приведенную ниже навигацию, чтобы показать экран входа в систему пользователю (если он не вошел в систему) или другие вкладки (если вошел в систему) ..

{isLoggedIn == null
          ? <Stack.Navigator>
              <Stack.Screen
                name="Login"
                options={{headerShown: false}}
                component={Login}
              />
            </Stack.Navigator>
          : <Tab.Navigator>
              <Tab.Screen
                name="Home"
.......
........ rest code

Однако это работает нормально. Но как теперь обновить sh все окно (после входа в систему) и показать навигацию по нижней вкладке?

1 Ответ

0 голосов
/ 03 августа 2020

Итак, вы спрашиваете, как вы помните, что пользователь вошел в систему? Вам нужно будет использовать какую-то форму в постоянном хранилище, например AsyncStorage . Затем, когда окно перезагружается (или загружается в первый раз), загрузите это хранилище своим приложением и правильно установите состояние isLoggedIn.

Вот поток в постоянном хранилище:

Какие у меня варианты хранения данных при использовании React Native? (iOS и Android)

Вероятно, у вас будет поставщик и контекст для чтения из локального хранилища и обработки статуса пользователя, вошедшего в систему, или нет. Это также верно, потому что многим компонентам в вашем приложении может потребоваться эта информация или username

Когда приложение открывается -> Читать хранилище (вам может потребоваться показать экран загрузки во время загрузки, но это должно быть быстро) . Если пользователь вошел в систему, настройте учетные данные и правильное состояние. Если это не так, установите для него isLoggedIn значение false.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...