Задать вопрос
Juniorrrrr
@Juniorrrrr

Как корректно приостановить работу react роутинга в SPA?

Есть сайт, фронт написан на ReactJS. Для корректной работы СЕО используется SSR.
Алгоритм примерно такой :
1 загрузка страницы
  1. браузер открывает /foo;
  2. ССР проверяет есть ли в кеше /foo - не находит;
  3. ССР на сервере рендерит и исполняет реакт приложение по запросу /foo;
  4. ССР кладет в кеш ХТМЛ, который получился в результате рендера /foo;
  5. ССР отдает браузеру ХТМЛ, который получился в результате рендера /foo;
  6. браузер выполняет асинхронные запросы, которые есть ХТМЛ, который получился в результате рендера /foo (CSS, JS, favicon...);
  7. подгрузившееся приложение реакт "понимает что страничка уже отрисована и не надо выполнять роутинг и все такое";
  8. реакт обрабатывает дальнейшие действия пользователя (как и в обычном SPA).

Последующие обновления
  1. браузер открывает /foo;
  2. ССР проверяет есть ли в кеше /foo - находит;
  3. ССР отдает браузеру ХТМЛ, который получился в результате рендера /foo;
  4. браузер выполняет асинхронные запросы, которые есть ХТМЛ, который получился в результате рендера /foo (CSS, JS, favicon...);
  5. подгрузившееся приложение реакт "понимает что страничка уже отрисована и не надо выполнять роутинг и все такое";
  6. реакт обрабатывает дальнейшие действия пользователя (как и в обычном SPA).


Проблема заключается на фронте в том что при каждом обновлении страницы запускается роутинг и рисуется всё приложение заново и таким образом появляется "мерцание", то есть 7 пункт.

Вопрос: Можно ли как то остановить эту отрисовку в определенный момент? Сказать роуту , что именно сейчас отрисовывать не нужно. Может есть какое -то популярное решение ?
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Сложный Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽