React Native Random Внутренний экран мигает само по себе c перед отображением экрана spla sh в iOS - PullRequest
0 голосов
/ 13 января 2020

Я создал переключатель навигатора между экранами авторизации и приложения. В первый раз это работало нормально, но после того, как мы используем приложение в течение некоторого времени, оно показывает случайный экран до spla sh, когда мы снова открываем приложение. На Android работает нормально.

Вот мой код для навигатора приложений:

// Authentication Screens Stack
const AuthStack = createStackNavigator(
    {
        LoginScreen: LoginScreen,
        // Login With Instagram Screen
        LoginInstagram: LoginInstagramScreen,
        RegisterScreen: RegisterScreen,
        ForgotPasswordScreen: ForgotPasswordScreen
},
    {
        // See https://reactnavigation.org/docs/en/stack-navigator.html#stacknavigatorconfig
        headerMode: 'none',
}
);
// Main App Stack from Home Screens
const AppStack = createStackNavigator(
    {
        DrawerScreen: DrawerNavigator,
},
    {
        // See https://reactnavigation.org/docs/en/stack-navigator.html#stacknavigatorconfig
        headerMode: 'none',
}
);
// Switch Navigator Between Authentication and Home Screens
const SwitchStack = createSwitchNavigator(
    {
        Auth: AuthStack,
        App: AppStack,
},
    {
        // See https://reactnavigation.org/docs/en/stack-navigator.html#stacknavigatorconfig
        headerMode: 'none',
}
);

export default createAppContainer(SwitchStack)

Вот код для приложения. js

render() {
return (
/**
 * @see https://github.com/reduxjs/react-redux/blob/master/docs/api/Provider.md
 */
<Provider store={store}>
{/**
 * PersistGate delays the rendering of the app's UI until the persisted state has been retrieved
 * and saved to redux.
 * The `loading` prop can be `null` or any react instance to show during loading (e.g. a splash screen),
 * for example `loading={<SplashScreen />}`.
 * @see https://github.com/rt2zz/redux-persist/blob/master/docs/PersistGate.md
 */}
<PersistGate loading={<SplashScreen />} onBeforeLift={this.onBeforeLift} persistor={persistor}>
{this.state.gateLifted ? <RootScreen LoginStatus={this.state.isLogin} /> : <SplashScreen />}
{/* {<RootScreen LoginStatus={this.state.isLogin} />} */}
</PersistGate>
</Provider>
)
}

У меня есть видел много приложений, показывающих этот тип поведения, но ничего не нашел об этом. Любая помощь будет оценена. Заранее спасибо

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