Реализуйте SSR с помощью React 18 (пипеТоНопиСываемый) react redux

#reactjs #redux #react-router #server-side-rendering

Вопрос:

Как вы знаете, альфа-версия react 18, которая только что была выпущена, включает в себя :

Ожидание и бездействие на сервере: теперь вы можете использовать и бездействие на сервере. Вместе с новым методом pipeToNodeWritable это решает давние болевые точки и проблемы с производительностью при рендеринге сервера:

Разделение кода работает совместно с SSR. Вам не нужно выбирать одно или другое. React использует ваши границы для потоковой передачи HTML-кода страницы в виде визуальных фрагментов. React использует ваши границы для разбиения страницы на куски, повышая скорость отклика.

Более подробная информация там : https://github.com/reactwg/react-18/discussions/47

Дэн Абрамов разработал демоверсию https://codesandbox.io/s/festive-star-9hfqt?file=/server/render.js показываем, как мы можем настроить SSR с помощью react с помощью pipeToNodeWritable, хотя сказано

у нас пока нет рекомендаций о том, как передавать данные с сервера на клиент для предварительного заполнения кэша

В типичном приложении SSR в маршрутизаторе react/react вы находите маршрут, соответствующий запросу, а затем ожидаете выполнения всех обещаний, содержащихся в компонентах ваших маршрутов.

Если вы используете redux, вы можете затем установить данные в хранилище и отобразить html. Что-то вроде этого : https://github.com/ilkeraltin/react-ssr-news/blob/master/src/index.js#L42

Мой вопрос в том, как это вписалось бы в демо Дэна Абрамова ? В render.js файл есть createServerData () функция, будет ли это то место, где мы в основном делаем то, что я описал выше ? (жду обещаний маршрута)