Добавление рендеринга на стороне сервера в существующий сайт React, созданный с помощью create-Reaction-app
Я строю сайт для клиента, используя CRA
(create-react-app
) а также react-router
v4.2.0 и не знал о последствиях, связанных с SEO Google. Когда я индексирую страницу из Google Search Console, я получаю это:
Я нашел несколько похожих вопросов, которые предложили добавить 'babel-polyfill'
в мою точку входа, но это только вызывает рендеринг моего корневого компонента в консоли, не принимая во внимание мои маршруты реакции-маршрутизатора. Я знаю что CRA
не предназначен для SSR
, Я надеялся найти обходной путь в CRA
или изящно мигрировать в другую библиотеку, такую как Next.js
без необходимости перестраивать весь сайт. Дайте мне знать, если нужна дополнительная информация. Спасибо за любые предложения.
1 ответ
Вы можете попробовать на https://github.com/antonybudianto/cra-universal/
Это CLI-компаньон для универсального приложения create-Reaction-app, без конфигурации eject + zero по умолчанию.
$ cd my-cra-app
$ npm start // start CRA client
$ npx cra-universal start // start CRA server
Для существующего кода вам нужно настроить, это зависит от стека вашего приложения. Вы можете посетить вики репозитория для интеграции React Router / Redux на сервере.