Ответ 1
Примечание: fooobar.com/info/63603/... содержит примеры и коды, которые могут вам помочь.
Это классическое недоразумение. Экспресс будет обрабатывать ваши бэкэнд-маршруты, тогда как реакция будет обрабатывать интерфейсные маршруты.
Ваше приложение React, вероятно, будет SPA (одностраничное приложение), что означает, что ваш сервер (экспресс или что-то еще) должен будет обслуживать index.html
и реагировать будет обрабатывать ваше приложение отсюда. Это означает, что React будет оценивать маршруты и решает, какой вид рендеринга.
Следовательно, вы должны убедиться, что, когда пользователи идут по маршруту, например /accounts/me
, серверы, если необходимо, обслуживают ваше приложение для взаимодействия (реагирования), но что-то вроде /api/users/me
будет отображать данные. Это просто пример.
"Обычным" использованием будет обработка ваших данных (через API) с помощью выражения и приложения (страниц и представлений) только с помощью React.
Если вы используете рендеринг сервера, это становится немного сложнее.
В большинстве случаев, да, вам придется использовать оба.
Изменить: было бы легче ответить, если бы ваш вопрос был более конкретным в отношении вашего использования и того, что вы хотите сделать.
Редактирование 2: в большинстве случаев это не те же серверы, которые обслуживают приложение frontend и API (данные), если это так, просто убедитесь, что приложение отправлено, когда некоторые маршруты попадают в службу: ie /home
, /about
(которые, очевидно, являются не-апи-маршрутами), следует отправить index.html
как ваше внешнее приложение, а React позаботится о маршрутах, чтобы решить, что делать.