@TjLink

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

Всем доброго дня!
Делаю проект, магазин с админкой (CMS).
Как правильно организовать проект на React с сервером на Node.js?

Вариант 1
Надо ли разделить Frontend и Backend на два разных проекта, затем с помощью Docker'a собрать отдельно Front и Back, и потом каждую часть разместить на отдельном хостинге?

62758af552aa2660518179.png

Вариант 2
Или же можно всё разместить в одном месте и потом с помощью Docker'а собрать всё это вместе и развернуть на VPS/VDS, где мы запускаем build Front'a и запускаем сервер (npm run serve)?

62758ab6569ae669650113.png

Мои мысли по этому поводу:
Так как мне придётся загружать фотографии в админке, потом сохранять всё это в локальной папке Front проекта , не скачивая сам файл, а именно сохранить в папке (/images).

Пример:
Выбрали файл -> Нажали "Сохранить изменения товара" -> Данные ушли на сервер -> Сервер сохранил изображение в папку (/images)

То мне скорее всего нужно будет сделать так, как во втором варианте. Ведь JS не умеет работать с каталогами, в то время как Node всё это может, через createWriteStream и pipe. Верно?

То есть хочу сделать как в PHP...
<form action="api/some.php">
   <input type="file" />
   <button type='submit'>Сохранить изменения товара</button>
</form>

...но на Node.js, аля
<form action="api/some.js">
   <input type="file" />
   <button type='submit'>Сохранить изменения товара</button>
</form>

Понятное дело, что так сделать нельзя и надо будет повесить обработчик и вызывать:
fetch('api/some.js').then(() => {
  alert('Файл сохранён в папку /images')
})


И да, не используя ReactDomServer, renderToString и так далее.

Если мои рассуждения на верном пути, то посоветуйте, как правильно всё оформить и где, что прописать.

Всем спасибо!
  • Вопрос задан
  • 157 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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