@danil_linkins

React App. Почему приложение перезагружается при переходе по Route?

Реализовал авторизацию и навигацию по приложение, структура такая:
// Корневой компонент
<Router>
          <Switch>
            <Route exact path="/login" component={LogIn} />
            <Route path="/reg" component={Reg} />
            <PrivateRoute isAuth={isAuth} path={'/'} component={App} />
          </Switch>
</Router>

// Тут я проверяю возвращаю роут с проверкой состояния
const PrivateRoute = ({ component: Component, isAuth, ...rest }) => {
  return (
    <Route
      {...rest}
      render={props => {
        return isAuth ? (
          <Component {...props} />
        ) : (
          <Redirect
            to={{
              pathname: "/signin",
              state: { from: props.location }
            }}
          />
        )}
      }
    />
  );
};

// И соотвественно App - это уже компонент с внутренними роутами, там есть свой свитч и роуты внутри.
              <Switch>
                <Route path={`/dashboard`} component={Dashboard} />
                // ... и т.д.
                <Route component={pageNotFound}/>
              </Switch>


Так вот суть вопроса в том, почему при переходах между роутами первый раз страница полностью перезагружается?
То есть при авторизации перезагружается соответственно, и при заходе на каждый роут в первый раз так же перезагружается, а в последующие разы уже нет.
В чем может быть дело?
  • Вопрос задан
  • 820 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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