@FaIcon

React + express. Как соединить вместе?

Начал разбираться с React-ом, и возникли у меня вопросы. Сейчас есть приложение на реакте (с браузерным роутерингом) и express сервер, на другом порту. Они обмениваются данными и всё хорошо работает. Я хочу добавить серверный рендеринг, чтобы на сервере решать кому какие страницы отдавать (есть авторизация). Но не могу понять, как соединить вместе react и express. Что конкретно хочу:

  1. Браузер делает запрос к серверу
  2. Сервер решает, что отдавать, и отдает только текущую страницу
  3. При смене урла, браузер отправляет запрос на сервак (без перезагрузки), получает html (или новый бандл файл) и перерисовывает страницу


Гугл помочь, не смог. Смотрел как это работает в инстаграме, там html вообще не грузится, запросы идут только за данными.

Правильно ли я понимаю, что реакт приложение нельзя разделить на отдельные страницы, которые, по мере необходимости, будут подгружаться с сервака? Я так понял, что весь сайт (все страницы) упаковываются в один bundle.js файл, и потом оттуда рендерятся, а renderToString используется только для ускорения загрузки при первом запросе.

Если всё таки можно разделить, подскажите как. Например, у меня есть три странички: Main, News, About. Я хочу, чтобы при смене url-a, с сервера подгружался html и страница перерисовывалась (без перезагрузки). При этом, чтобы в бандле осталась только логика компонентов (иначе нет смысла в подгрузке из сервера).
  • Вопрос задан
  • 704 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы