#reactjs #babeljs #server-side-rendering #react-server
Вопрос:
Я совсем новичок в React js, и я почти уверен, что есть концепции, которых мне не хватает, и я не могу найти правильные ответы на свои вопросы.
Итак, у меня есть простой php-проект, работающий на nginx, мне интересно, могу ли я каким-то образом избежать использования сервера webpack или сервера react js для рендеринга на стороне сервера и вместо этого скомпилировать код jsx с помощью какого-то наблюдателя, который затем будет использоваться на стороне клиента.
Причина этого в том, что я понял, что если я только добавлю
<script src="https://unpkg.com/react@17/umd/react.production.min.js" crossorigin></script>
<script src="https://unpkg.com/react-dom@17/umd/react-dom.production.min.js" crossorigin></script>
в голову и используйте вавилонский наблюдатель с
npx babel --watch <indir> --out-dir <outdir> --presets react-app/prod
тогда я не могу использовать библиотеки с открытым исходным кодом, такие как react-easy-crop, поскольку они созданы для рендеринга на стороне сервера.
короче говоря, есть ли у меня способ скомпилировать то, что будет делать рендеринг на стороне сервера, и использовать его для рендеринга на стороне клиента?
Комментарии:
1. Обычный рабочий процесс с React заключается в использовании bundler, такого как Webpack, Snowpack, Vite и т. Д. для связывания кода интерфейса (включая реакцию), затем подайте пакет в виде статического файла на вашем сервере. Сервер разработки Webpack используется только для разработки.
2. @AKX хм, значит, процесс будет запущен
npm run build
в react, а затем использовать webpack для создания abundle.js
из файлов внутри/build
папки? Затем включитеbundle.js
в конце тела?3. Довольно много. Посмотрите, что, например. создает-реагирует-приложение.