Сначала.
Пишу: npm init (создается базовый package.json)
Устанавливаю express.js, разворачиваю сервер, делаю маршрутизацию - все работает.
Как мне развернуть реакт?
Пишу: npm i -g create-react-app
Пишу: create-react-app client
Пишу: cd client
Пишу: npm start (Создается проект с базовым окружением для реакта, еще один package...)
Не совсем понимаю, как их совмещать?! Проект с реактом и должен быть в отдельной папке? (такое ощущение, что один проект в другом получился...)
Или юзаю неправильно? Как мне его прикрутить правильно, с учетом того, что развернут уже сервер на express.
Или нужно начать с создания проекта на реакт и затем развертывать сервер?
Заранее благодарен за полезные ответы.
Структура:
/app - проект node js
/app/client - проект react js
Да, это два разных проекта. Первый это фронтенд (со своим сервером, где он берёт данные которые потом показывает), а второй это бэкенд, к которому позже будет обращатся ваш фронтенд.
Позже (когда будет продуктивный сервер) их надо будет объединить. То есть бэкенд будет отдавать и файлы(картинки, css, итд) и отвечать на запросы фронта.
lexstile, express выступает обычно в роли апи сервера, его задача отдавать данные по рест и все, ну еще можно конечно отдавать статику с экспресса, но это сомнительное удовольствие имхо. Исключение для ssr но это не про cra
роуты реакт это чисто тема фронта, она делается на фронте.