archakov06
@archakov06
Frontend-разработчик (ReactJS)

React Native: Почему компонент не рендерится после редиректа?

Пишу приложение на RN и решил подключить роутинг через react-router-native.

const state = {
    authStore: {
        isAuth: true,
    }
};

const PrivateRoute = ({ component: Component, ...rest }) => (
    <Route
        {...rest}
        render={props =>
            state.authStore.isAuth ? (
                <Component {...props} />
            ) : (
                <Redirect
                    to={{
                        pathname: '/login',
                        state: { from: props.location },
                    }}
                />
            )}
    />
);

<Provider store={store}>
        <NativeRouter>
            <View>
                <Container>
                    <Route path="/registration" component={Registration} />
                    <Route path="/login" component={Login} />
                    <PrivateRoute path="/" component={Masters} />
                </Container>
            </View>
        </NativeRouter>
    </Provider>


Редирект происходит на /login, но рендер этого компонента не выполняется. Если запустить Toggle Element Inspector, то все окей.

Подскажите, как решить эту проблему? Я не хочу переделывать роутинг на другой, я уже определились с выбором, но столкнулся с такой проблемой и не пойму, как ее решить уже второй день.
  • Вопрос задан
  • 127 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vshvydky
Я как минимум вижу необъявленную переменную state, может там всегда undefined у тебя?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы