Nikulio
@Nikulio
NaN !== NaN

Как правильно связать Node.js и React?

Всем привет!
Есть пара вопросов по настройке связи бэка и фронта.
1) Как сделать так, чтобы при обновлении страницы react-router-dom не терял контекст? Скажем, если нахожусь на /add, то при обновлении остаться на /add? На express использую express.Router()
2) Как оба процесса фронта и бэка запустить на одном порту и нужно ли это делать для успешного взаимодействия?
Структура такая:
-package.json
-server
--server.js
--package.json
-frontend
--webpack.config.js
--package.json

В главном package.json лежат все зависимости, в саб-фолдерах только скрипты. Сделал, чтобы была возможность запустить из главного package.json и бэк, и фронт :

"start": "concurrently \"npm run --prefix frontend start\" \"npm run --prefix server start\"",


Cпасибо!
  • Вопрос задан
  • 4050 просмотров
Решения вопроса 1
HalfBloodPrince
@HalfBloodPrince
Front-End Developer
Не пойму что за два процесса на одном порту. В любом случае, нельзя.
А делается так, экспресс уже есть. Запускается скрипт, собирается фронт в папку dist/ к примеру, из этой папки index.html сервится экспрессом на любую страницу по флагу .route("*", "index.html").

То есть, по любому запросу ты отдаешь index.html, в котором скомпилированное реакт приложение, где уже подключается react-router-dom и само все пути решает. А на сервере держишь свои API endpoint'ы.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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